我正在尝试将字符串更改为数据框中的浮点值。
#showing dataframe for illustration`
IN: df2[:5]
OUT: TRD_EXCTN_DT ASCII_RPTD_VOL_TX
0 08/13/2010 1000000
1 08/16/2010 1MM+
2 08/16/2010 369000
3 08/16/2010 1MM+
4 08/16/2010 1MM+
输出连接字符串,即使我认为我已将其更改为浮点数。我需要对数字进行操作,因此字符串不起作用。
IN: df2.loc[df2['ASCII_RPTD_VOL_TX'] == '1MM+', 'ASCII_RPTD_VOL_TX'] = 1000005
df2.ASCII_RPTD_VOL_TX.astype(float)
df2['b'] = df2['ASCII_RPTD_VOL_TX'] + df2['ASCII_RPTD_VOL_TX']
df2[:3]
OUT: TRD_EXCTN_DT ASCII_RPTD_VOL_TX b
0 08/13/2010 1000000 10000001000000
1 08/16/2010 1000005 2000010
2 08/16/2010 369000 369000369000`
另外,
In[22]:df2.dtypes
Out[22]:TRD_EXCTN_DT object
ASCII_RPTD_VOL_TX object
b object
dtype: object
答案 0 :(得分:0)
您想将第二行更改为df2['ASCII_RPTD_VOL_TX']=df2.ASCII_RPTD_VOL_TX.astype(float)
。
您得到奇怪结果的原因是您的第1行和第3行ASCII_RPTD_VOL_TX列单元格仍在str
中。 +
正在为那些单元格执行字符串concatenate
。