问题描述
在此数据框中
SuperHero Male Female TOTAL
0 Thor 26 12 38
1 Marvel 12 32 44
2 Other 10 8 18
3 TOTAL 48 52 10
0
如何对两个值进行除法。
例如:
a=df.iloc[[0],[3]]
b=df.iloc[[3],[3]]
p=a/b
print(a)
print(b)
print(float(p))
总计 0 38 总 3 100
-----------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-33-cfe71c8d8503> in <module>
4 print(a)
5 print(b)
----> 6 print(float(p))
7
TypeError: float() argument must be a string or a number,not 'DataFrame'
解决方法
您实际上是从.iloc函数返回一个数据帧 您只需要对代码进行一些修改:
a=df.iloc[0,3]
b=df.iloc[3,3]
p=a/b
print(a)
print(b)
print(float(p))
输出
38
100
0.38
,
尝试像这样访问数据框中的值:
a = df.iloc[0,3]
b = df.iloc[3,3]