1
我的代码从网站中获取信息并将其放入数据框中。但我不知道为什么代码的顺序会导致错误:AttributeError: Can only use .str accessor with string values, which use np.object_ dtype in pandas
在更换熊猫数据框中的值时发生str错误
基本上,刮的数据有20多行和10列。
- 某些数值位于括号内
ie: (2,333)
,我想将其更改为:-2333
。 - 一些值有话
n.a
,我想将其更改为numpy.nan
- 某些值
-
,我想将其更改为numpy.nan
了。
不起作用
for final_df, engine_name in zip((df_foo, df_bar, df_far), (['engine_foo', 'engine_bar', 'engine_far'])):
# Replacing necessary items for final clean up
final_df.replace('-', numpy.nan, inplace=True)
final_df.replace('n.a.', numpy.nan, inplace=True)
for i in final_df.columns:
final_df[i] = final_df[i].str.replace(')', '')
final_df[i] = final_df[i].str.replace(',', '')
final_df[i] = final_df[i].str.replace('(', '-')
# Appending Code to dataframe
final_df = final_df.T
final_df.insert(loc=0, column='Code', value=some_code)
# This produces the error - AttributeError: Can only use .str accessor with string values, which use np.object_ dtype in pandas
作品
for final_df, engine_name in zip((df_foo, df_bar, df_far), (['engine_foo', 'engine_bar', 'engine_far'])):
# Replacing necessary items for final clean up
for i in final_df.columns:
final_df[i] = final_df[i].str.replace(')', '')
final_df[i] = final_df[i].str.replace(',', '')
final_df[i] = final_df[i].str.replace('(', '-')
final_df.replace('-', numpy.nan, inplace=True)
final_df.replace('n.a.', numpy.nan, inplace=True)
# Appending Code to dataframe
final_df = final_df.T
final_df.insert(loc=0, column='Code', value=some_code)
# This doesn't give me any errors and returns me what I want.
,为什么出现这种情况有什么想法?
这是不可复制的任何数据框,你可以给一个数据的例子吗? – PRMoureu