2017-07-08 194 views
0

这是我的代码片段,其中data2是数据框。 为什么不将字符串对象转换为浮动? 相同的代码可以将字符串转换为int64。ValueError:无法将字符串转换为浮点数:Numpy数组

dt = np.dtype(object) # Python object 
df4 = data2['What was your +2 percentage?'] 
x=np.array(df4,dtype=dt) 
y = x.astype(float) 
+0

你想做什么?你可以发布'data2'包含的内容吗? –

+0

data1 = pd.read_csv('/ home/ashutosh/Downloads/Data.csv')和data2 = pd.DataFrame(data1) –

+0

要查看数据并不容易判断问题所在。 –

回答

0

假设df是您的数据帧时,您可以使用pd.to_numeric您的数据对象转换成浮动:

In [86]: pd.to_numeric(df['data'], errors='coerce') 
Out[86]: 
0 1.0 
1 2.0 
2 -3.0 
3 5.5 
Name: data, dtype: float64 

In [91]: pd.to_numeric(df['data'], errors='coerce').tolist() 
Out[91]: [1.0, 2.0, -3.0, 5.5] 

你得到的是浮动的列表,你可以将其转换为np.array()

相关问题