我将 pandas 导入为 pd 并运行下面的代码并得到以下结果
Code:
traindataset = pd.read_csv('/Users/train.csv')
print traindataset.dtypes
print traindataset.shape
print traindataset.iloc[25,3]
traindataset.dropna(how='any')
print traindataset.iloc[25,3]
print traindataset.shape
Output
TripType int64
VisitNumber int64
Weekday object
Upc float64
ScanCount int64
DepartmentDescription object
FinelineNumber float64
dtype: object
(647054, 7)
nan
nan
(647054, 7)
[Finished in 2.2s]
从结果来看,dropna 行不起作用,因为行号没有改变并且数据帧中仍然存在 NAN。这是怎么来的?我现在很疯狂。
你需要阅读文档 http://pandas.pydata.org/pandas-docs/version/0.17.0/generated/pandas.DataFrame.dropna.html(强调):
Return给定轴上带有标签的对象被省略
dropna
returns a new数据框。如果您希望它修改现有的 DataFrame,您所要做的就是进一步阅读文档:
inplace: 布尔值,默认 False
如果为 True,则就地执行操作并返回 None。
因此要就地修改它,请执行以下操作traindataset.dropna(how='any', inplace=True)
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)