pandas 空数据处理和数据过滤

原创 2018年04月16日 14:58:19

1.pandas数据过滤

import pandas as pd
from pandas import DataFrame,Series
import numpy as np

dict1 = {'age':[12,23,34,45],
         'name':['小宁','小红','小兰','小花'],
         'sex':['男','女','男','女']}
df1 = pd.DataFrame(dict1,index = ['a','e','w','r'])
print(df1)
   age name sex
a   12   小宁   男
e   23   小红   女
w   34   小兰   男
r   45   小花   女
df1['英语'] = ['66','77','88','87']
df1['语文'] = ['66','77',np.NaN,'87']
df1['数学'] = ['66','77','88','87']
df1[df1.columns[3:]]

英语	语文	数学	address
a	66	66	66	
e	77	77	77	
w	88	NaN	88	
r	87	87	87	
s	NaN	NaN	NaN
	

pandas 空数据处理

isnull 函数判断是否含有空数据,如果有为True否则为False,notnull函数和isnull函数相反

df1.isnull()

age	name	sex	英语	语文	数学
a	False	False	False	False	False	False
e	False	False	False	False	False	False
w	False	False	False	False	True	False
r	False	False	False	False	False	False

对数据添加行和列:

df1

age	name	sex	英语	语文	数学
a	12	小宁	男	66	66	66
e	23	小红	女	77	77	77
w	34	小兰	男	88	NaN	88
r	45	小花	女	87	87	87
df1['address'] = ['上海',np.NaN,np.NaN,np.NaN,np.NaN]
df1.ix['s'] = ['32','红','55',np.NaN,np.NaN,np.NaN,np.NaN,]

age	name	sex	英语	语文	数学	address
a	12	小宁	男	66	66	66	上海
e	23	小红	女	77	77	77	NaN
w	34	小兰	男	88	NaN	88	NaN
r	45	小花	女	87	87	87	NaN
s	32	红	55	NaN	NaN	NaN	NaN

删除所有带nan的行:

df1.dropna(how = 'any',axis = 0)

age	name	sex	英语	语文	数学	address
a	12	小宁	男	66	66	66	上海

删除所有带nan的列:

df1.dropna(how = 'any',axis = 1)

age	name	sex
a	12	小宁	男
e	23	小红	女
w	34	小兰	男
r	45	小花	女
s	32	红	55

注意:axis 是表示行和列的参数,如个axis=1代表列,axis=0代表行

使用0填充数据,需要用到函数:fillna()

df1.fillna(0)
	age	name	sex	英语	语文	数学	address
a	12	小宁	男	66	66	66	上海
e	23	小红	女	77	77	77	0
w	34	小兰	男	88	0	88	0
r	45	小花	女	87	87	87	0
s	32	红	55	0	0	0	0

利用Python Pandas进行数据预处理-数据清洗

数据缺失、检测和过滤异常值、移除重复数据 数据缺失 数据缺失在大部分数据分析应用中都很常见,Pandas使用浮点值NaN表示浮点和非浮点数组中的缺失数据,他只是一个便于被检测出来的数据而已。from...
  • YEN_CSDN
  • YEN_CSDN
  • 2016-12-03 17:54:04
  • 39979

pandas入门——数据过滤

数据过滤import pandas as pd import numpy# 导入数据fd = pd.read_csv(filepath_or_buffer="D://NBA.csv", encodin...
  • weixin_39501270
  • weixin_39501270
  • 2017-08-02 20:02:15
  • 125

pandas之索引、选取和过滤

《利用python进行数据分析》相应章节obj=Series(np.arange(4.),index=['a','b','c','d']) from pandas import * import pa...
  • kaikai_sk
  • kaikai_sk
  • 2017-05-17 13:39:29
  • 587

Python数据分析(Pandas Numpy等)

  • 2018年01月26日 12:12
  • 77.68MB
  • 下载

Pandas —— 处理缺失数据dropna( )和fillna( )

dropna( ) 对于Serial对象 丢弃带有NAN的所有项 In [152]: data=pd.Series([1,np.nan,5,np.nan]) In [153]: dat...
  • starter_____
  • starter_____
  • 2018-01-28 08:49:50
  • 383

Python的pandas库实战进行一个数据处理的工作

下面进行一个目标处理的步骤:将对应满足要求的数据找出来进行处理。 在Excel中完全可以进行但是为了熟悉下pandas中数据框的用法,这里就花点时间试验下; 图片的格式在下方: 主函数: ma...
  • actanble
  • actanble
  • 2016-08-16 20:25:01
  • 1966

用 Python 做数据处理必看:12 个使效率倍增的 Pandas 技巧(上)

导语 Python正迅速成为数据科学家偏爱的语言,这合情合理。它拥有作为一种编程语言广阔的生态环境以及众多优秀的科学计算库。如果你刚开始学习Python,可以先了解一下Python的学习路线。 在...
  • GUANGZHAN
  • GUANGZHAN
  • 2016-01-29 19:57:33
  • 1970

基于pandas进行数据预处理

参加kaggle数据挖掘比赛,就第一个赛题Titanic的数据,学习相关数据预处理以及模型建立,本博客关注基于pandas进行数据预处理过程。包括数据统计、数据离散化、数据关联性分析引入包和加载数据i...
  • u014400239
  • u014400239
  • 2017-04-27 11:10:43
  • 2068

Python使用Pandas对大型csv文件进行数据处理

今天接到一个新的任务,要对一个140多M的csv文件进行数据处理,总共有170多万行,尝试了导入本地的MySQL数据库进行查询,结果用Navicat导入直接卡死....估计是XAMPP套装里面全默认配...
  • lpwmm
  • lpwmm
  • 2018-04-13 18:43:22
  • 30

Pandas 创建空的DataFrame

平时写pyhton的时候习惯初始化一些list啊,tuple啊,dict啊这样的。一用到Pandas的DataFrame数据结构也就总想着初始化一个空的DataFrame,虽然没什么太大的用处,不过还...
  • chixujohnny
  • chixujohnny
  • 2017-01-06 09:45:31
  • 23038
收藏助手
不良信息举报
您举报文章:pandas 空数据处理和数据过滤
举报原因:
原因补充:

(最多只允许输入30个字)