[当我尝试将float64转换为单个值的float时,它可以正常工作-
import pandas as pd
a=pd.DataFrame()
a['Num']=['1','2','3','4']
a
def float(x):
return x.item()
float(a['Num'].astype('float')[1])
输出=“浮点数”格式的2.0
[当我在系列上尝试相同时,它引发错误“ float”对象没有属性'item'-
b=map(float,a['Num'].astype('float64'))
print(list(b))
请帮助!
不要将函数命名为“ float”不是一个好主意。
在这种情况下,您有numpy类型
import pandas as pd
a=pd.DataFrame()
a['Num']=['1','2','3','4']
def to_float(x):
print(type(x))
return x.item()
to_float(a['Num'].astype('float')[1])
<class 'numpy.float64'>
2.0
但是当您打电话时
list(map(to_float,a['Num'].astype('float64')))
您有错误,因为类浮动没有属性'item'
<class 'float'>