python设置值及NaN值处理方法

yipeiwu_com6年前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 2.6.6升级到python 2.7.x版本的方法

1.下载python2.7.x wget https://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz 2.解压并编译安装 tar -...

numpy concatenate数组拼接方法示例介绍

数组拼接方法一 思路:首先将数组转成列表,然后利用列表的拼接函数append()、extend()等进行拼接处理,最后将列表转成数组。 示例1: >>> impor...

Python遍历zip文件输出名称时出现乱码问题的解决方法

本文实例讲述了Python遍历zip文件输出名称时出现乱码问题的解决方法。分享给大家供大家参考。具体如下: windows中使用python2.7遍历zip文件之后输出文件名等信息,co...

Python模拟登录12306的方法

本文实例讲述了Python模拟登录12306的方法。分享给大家供大家参考。 具体实现方法如下: 复制代码 代码如下: #!/usr/bin/python # -*- coding: ut...

python 统计一个列表当中的每一个元素出现了多少次的方法

如下所示: #coding=utf-8 #方式一 print('*'*20 + '方式一' + '*'*20) li1 = [1,2,2,3,3,3,4,4,4,4,5,5,5,5,...