python设置值及NaN值处理方法

yipeiwu_com5年前Python基础

如下所示:

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值处理方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python itchat实现微信自动回复的示例代码

今天在实验楼发现一个特别好玩的,Python 微信库itchat,可以实现自动回复等多种功能,好玩到根本停不下来啊,尤其是调戏调戏不懂计算机的,特别有成就感,哈哈!! 代码如下: #...

Python捕捉和模拟鼠标事件的方法

本文实例讲述了Python捕捉和模拟鼠标事件的方法。分享给大家供大家参考。具体分析如下: 这个假期玩了不少galgame,不过有些很老的游戏没有自动运行模式,点击鼠标又太伤按键了,于是想...

django 2.0更新的10条注意事项总结

前言 备受期待的django 2.0已经发布了,最大的一个变化就是不再支持python2.x版本了,这也为我们还在保守使用的2.x的同学们敲响了警钟,赶紧学习python3.x吧,虽然大...

python使用正则表达式来获取文件名的前缀方法

在我们处理文件的时候,会遇到这样的一种场景,我们需要对某个文件进行操作,然后生成与原文件名相同的文件(只是文件格式改变)。那么这个时候就可以使用正则表达式来匹配我们所需要的字符串。 实现...

用python实现的去除win下文本文件头部BOM的代码

问题:windows环境下新建或编辑文本文件,保存时会在头部加上BOM。使用ftp上传到linux下,在执行时第一行即报错。以下方法可以去除BOM头,有需要的朋友可以参考下。 复制代码...