Python Pandas数据值设置与NaN处理实战
本文介绍Python中Pandas库对DataFrame数据的修改与NaN值处理方法。通过loc和iloc定位修改特定单元格,利用条件筛选批量更新数据,并演示如何添加含NaN的新列。最后讲解使用isnull和np.any检测缺失值,以及fillna进行数值填充的完整流程,帮助开发者高效处理数据异常。
接下来展示具体的代码实现过程。
python 设置值
import pandas as pd
import numpy as np
dates = pd.date_range('20180101',periods=6)
df = pd.DataFrame(np.arange(24).reshape(6,4),index=dates,columns=['A','B','C','D'])
print(df)
A B C D
2018-01-01 0 1 2 3
2018-01-02 4 5 6 7
2018-01-03 8 9 10 11
2018-01-04 12 13 14 15
2018-01-05 16 17 18 19
2018-01-06 20 21 22 23
df.loc['20180102','A'] = 1111 print(df)
A B C D
2018-01-01 0 1 2 3
2018-01-02 1111 5 6 7
2018-01-03 8 9 10 11
2018-01-04 12 13 14 15
2018-01-05 16 17 18 19
2018-01-06 20 21 22 23
df.iloc[2,2] = 2222 print(df)
A B C D
2018-01-01 0 1 2 3
2018-01-02 1111 5 6 7
2018-01-03 8 9 2222 11
2018-01-04 12 13 14 15
2018-01-05 16 17 18 19
2018-01-06 20 21 22 23
df[df.A>12]=0 #修改df数据中符合条件的所有值 print(df)
A B C D
2018-01-01 0 1 2 3
2018-01-02 0 0 0 0
2018-01-03 8 9 2222 11
2018-01-04 12 13 14 15
2018-01-05 0 0 0 0
2018-01-06 0 0 0 0
df.A[df.A<4]=11 #修改df数据中A列符合条件的所有值 print(df)
A B C D
2018-01-01 11 1 2 3
2018-01-02 11 0 0 0
2018-01-03 8 9 2222 11
2018-01-04 12 13 14 15
2018-01-05 11 0 0 0
2018-01-06 11 0 0 0
df['F'] = np.nan print(df)
A B C D F
2018-01-01 11 1 2 3 NaN
2018-01-02 11 0 0 0 NaN
2018-01-03 8 9 2222 11 NaN
2018-01-04 12 13 14 15 NaN
2018-01-05 11 0 0 0 NaN
2018-01-06 11 0 0 0 NaN
print(np.any(df.isnull())== True) #isnull检测是否含有NaN值,有就返回True。np.any()检测df数据中是否含有等于Ture的值
True
针对NaN值的填充操作:print(df.fillna(value=0))
以上关于Python中设置值及处理NaN值的方法分享完毕,希望能为读者提供实用的参考,欢迎继续支持本站获取更多技术内容。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









