我是Pandas for Python的新手,正忙着阅读csv文件。不幸的是,Excel文件有一些#VALUE的单元格!和#DIV / 0!在他们中。我无法在Excel中修复此问题,因为数据是从其他工作表中提取的。 Pandas将这些列转换为objects
而不是numpy64
,因此我无法从中进行绘制。我想替换#VALUE!和#DIV / 0! Pandas中带有NaN条目的字符串,但我找不到如何执行此操作。我尝试了以下(我的代码运行,但它没有任何改变):
import pandas as pd
import numpy as np
df = pd.read_csv('2013AllData.csv')
df.replace('#DIV/0!', np.nan)
答案 0 :(得分:5)
不是在加载后替换,而是在读取csv时设置参数na_values
,并在创建df时将它们转换为NaN
值:
df = pd.read_csv('2013AllData.csv', na_values=['#VALUE!', '#DIV/0!'])
检查文档:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html#pandas.read_csv