python进行数据预处理-pandas
安装pandas,命令行输入 pip install pandas
导出pandas以及它主要的两个数据结构Series和DataFrame
import pandas as pd
from pandas import Series,DataFram
从csv或txt文件中读取数据到DataFrame
import csvdata=pd.read_csv(\'filename.csv\',encoding=\'gb18030\',newline=\'\')默认分隔符为逗号
data=pd.read_table(\'filename.txt\',seq=\',\')#加载带分隔符的数据使用seq=\'分隔符\'
read_fwf #读取定宽列格式数据,没有分隔符
read_clipboard #读取剪切板中的数据,可以看做read_table的剪切板。在将网页转换为表格时有用
选择:数据访问(标签、特定值、布尔索引等)
>>> datakey1 key2
c1 9 8
c2 3 4
>>> data[\'key1\']
c1 9
c2 3
>>> data.ix[\'c1\']
key1 9
key2 8
>>> data[data[\'key1\']>8]
key1 key2
c1 9 8
>>> data[:1]
key1 key2
c1 9 8
>>> data<5
key1 key2
c1 False False
c2 True True
>>> data<5
key1 key2
c1 False False
c2 True True
>>> data[data<5]=0
>>> data
key1 key2
c1 9 8
c2 0 0
>>> data.ix[0]
key1 9
key2 8
>>> data.ix[:\'c2\',:]
key1 key2
c1 9 8
c2 0 0
缺失值处理:对缺失数据行进行删除或填充
#Seriesdata.dropna()
data[data.notnull()]
#DataFrame
data.dropna() #丢弃任何含有缺失值的行
data.dropna(how=\'all\') #丢弃全为NA的行
data.dropna(axis=1, how=\'all\') #丢弃列
data.fillna(0,method=\'ffill\') #缺失值替换成0,
data.fillna({1: 0.5, 3: -1},inplace=True) #对不同的列填充不同的值 fillna默认返回新对象,inplace表示就地修改
重复值处理:重复值的判断与删除
data.duplicated() #表示各行是否重复行,返回布尔值data.drop_duplicates() #返回一个移除重复行的DataFrame
data.drop_duplicates([\'key1\']) #根据key1列过滤重复项,默认保留第一个出现的值组合
data.drop_duplicates([\'k1\', \'k2\'], take_last=True) #保留最后一个值组合
异常值处理:清除不必要的空格和极端、异常数据
相关操作:描述性统计、Apply、直方图等
合并:符合各种逻辑关系的合并操作
分组:数据划分、分别执行函数、数据重组
Reshaping:快速生成数据透视表
以上是 python进行数据预处理-pandas 的全部内容, 来源链接: utcz.com/z/388980.html