Am new to python programming. Can anyone pls check the below syntax for if condition-
if df1[A]<= df2[B]):
print("")
else:
print("")
Getting this exception - ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
You compare arrays, no scalar, so output of camparing is another array. So need any or all. Also need length of both Series is same:
df1 = pd.DataFrame({'A':[1,2,3]})
print (df1)
A
0 1
1 2
2 3
df2 = pd.DataFrame({'B':[1,2,0]})
print (df2)
B
0 1
1 2
2 0
print (df1['A']<= df2['B'])
0 True
1 True
2 False
dtype: bool
#check if at least one True
print ((df1['A']<= df2['B']).any())
True
#check if all values are True
print ((df1['A']<= df2['B']).all())
False
if (df1['A']<= df2['B']).any():
print("at least one value True")
else:
print("no False values")
at least one value True
if (df1['A']<= df2['B']).all():
print("all values True")
else:
print("not all values True")
not all values True
df1 = pd.DataFrame({'A':[1,2,3]})
print (df1)
A
0 1
1 2
2 3
df2 = pd.DataFrame({'B':[1,2,3]})
print (df2)
B
0 1
1 2
2 3
print (df1['A']<= df2['B'])
0 True
1 True
2 True
dtype: bool
#check if at least one True
print ((df1['A']<= df2['B']).any())
True
#check if all values are True
print ((df1['A']<= df2['B']).all())
True
if (df1['A']<= df2['B']).any():
print("at least one value True")
else:
print("no False values")
at least one value True
if (df1['A']<= df2['B']).all():
print("all values True")
else:
print("not all values True")
all values True
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With