【发布时间】:2019-02-16 00:57:28
【问题描述】:
我正在尝试将计算出的数字列添加到 csv 文件中。但是,这些列包含一些文本作为字符串(不应该存在),所以当我尝试运行代码时,我收到了AttributeError。任何人都知道如何删除数字列中的所有字符串(即将字符串列变为浮点数)。否则,我尝试忽略错误,但 except 函数没有帮助。
import pandas as pd
try:
df = pd.read_csv('test.csv')
df['new_numbers_column'] = (df['numbers_column']+2)
df.to_csv('test.csv', index=False)
except AttributeError:
pass
【问题讨论】:
-
您能否提供minimal reproducible example 一些示例数据和您的预期输出?这可以通过
pd.Series.str.extract或仅pd.to_numeric轻松完成,但是如果没有样本数据,很难知道您是否需要从带有文本的列中实际提取数字,或者只是将所有错误行强制转换为NaN -
您好,感谢您的回复,这里是样表
-
df = pd.DataFrame({'B':['a',7, 8], 'C':[7,8,9]})
标签: python string pandas attributeerror