利用python进行数据分析(五):数据规整化

来源:互联网 发布:php麻将机器人ai算法 编辑:程序博客网 时间:2024/05/22 04:37

首先

import pandas as pd

(1)连接pandas对象

pd.concat([s1,s2,s3])  #s1,s2,s3是pandas对象,默认axis=0pd.concat([s1,s2,s3],axis=1)  #生成DataFramepd.concat([s1,s2,s3],axis=1,keys=['one','two','three'])  #添加列名df1.combine_first(df2)          #组合两个DataFrame并合并重叠数据

(2)DataFrame移除重复数据

frame.drop_duplicate()          #消除重复数据,默认保存第一个值的组合。frame.drop_duplicate([‘k1’])     #只根据某一列来消除重复数据frame.drop_duplicate(take_last=True)        #消除重复数据,保存最后一个。

(3)pandas对象替换值

data.replace([-999,100],np.nan)    #将data中的-999,都替换为NaN

(4)字符串操作

s.split(‘,’)  #以逗号为间隔将字符串拆成字符串数组s.strip()     #去掉字符串s中的空白符[x.strip() for x in s.split(‘,’)]‘g’ in s      #可以判断s中是否有'g' s.index('g')  #返回'g' 的索引位置s.find('g')   #返回'g' 的索引位置,没有的话返回-1s.count('g')     #计算'g'  出现的次数

(5)正则表达式

pattern=r’[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}’  #一个可以识别大部分电子邮件的正则表达式regex=re.compile(pattern,flags=re.IGNORECASE)   #这个flag的作用是让正则表达式对大小写不敏感。regex.findall(text)                 #在字符串text中寻找所有的符合这种规范的字符串切片

(6)pandas中矢量化的字符串函数

data.str.contains(‘gmail’)         #检查pandas对象中每个元素是否包含’gmail‘字符串data.str.get(1)                    #获取各元素里面的第1个元素。data.str[:5]                       #获取各元素里面的前五个元素。
阅读全文
0 0
原创粉丝点击