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利用matplotlib做图中图及次坐标轴的实例

Python利用matplotlib做图中图及次坐标轴的实例

图中图 准备数据 import matplotlib.pyplot as plt fig = plt.figure() x = [1, 2, 3, 4, 5, 6, 7] y =...

Django中的文件的上传的几种方式

PS:这段时间有点不在状态,刚刚找回那个状态,那么我们继续曾经的梦想 今天我们来补充一下文件的上传的几种方式: 首先我们先补充的一个知识点: 一、请求头ContentType: Con...

python错误:AttributeError: 'module' object has no attribute 'setdefaultencoding'问题的解决方法

Python的字符集处理实在蛋疼,目前使用UTF-8居多,然后默认使用的字符集是ascii,所以我们需要改成utf-8 查看目前系统字符集 复制代码 代码如下: import sys p...

Python控制多进程与多线程并发数总结

Python控制多进程与多线程并发数总结

一、前言 本来写了脚本用于暴力破解密码,可是1秒钟尝试一个密码2220000个密码我的天,想用多线程可是只会一个for全开,难道开2220000个线程吗?只好学习控制线程数了,官方文档...

python 限制函数执行时间,自己实现timeout的实例

如下所示: # coding=utf-8 import signal import time def set_timeout(num, callback): def wr...