本帖最后由 袅袅系秋风 于 2019-8-2 14:45 编辑
使用工具:anaconda
2019.8.2
[Python] 纯文本查看 复制代码 #去除重复数据
df1=DataFrame({'age':[26,35,18,35,35],'name':['Ben','John','Jerry','John','John']})
print(df1)
df1.duplicated()
df1.duplicated('name')
df1.duplicated('age')
df1.drop_duplicates()
[Python] 纯文本查看 复制代码 #缺失值处理
from pandas import read_excel
df=read_excel(r'C:\Users\fyz\Desktop\0814171成绩统计表.xlsx',skiprows=[1])
print(df)df.isnull()#判断是否缺失值
df.dropna()#删除值为空的行
df.fillna('?')#使用?填充缺失值
df.fillna(method='pad')#用前一个数据值替代NaN
df.fillna(method='bfill')#用后一个数据值替代NaN
df.fillna(df.mean())#使用均值填补数据
df.fillna(df.mean()['认知实习':'大学计算机基础'])#使用列的均值为某列空值填补数据
df.fillna({'认知实习':100,'大学计算机基础':99})#为不同的列填补不同的数据
df1['name'].str.strip()#清楚字符型数据左右指定字符
df1['name'].str.strip('n')
df1['name'].str.rstrip('n')#删除右边字符
#数据抽取
1、字段抽取
[Python] 纯文本查看 复制代码 df=read_excel('E:\Python\《基于Python的大数据分析基础及实战》064992【配套资源】\数据及相关的资料\i_nuc.xls',sheetname='Sheet4')
df['电话']=df['电话'].astype(str)#转化类型
df['电话']
[Python] 纯文本查看 复制代码 bands=df['电话'].str.slice(0,3)抽取手机号码前3位,判断号码运营商
bands
[Python] 纯文本查看 复制代码 areas=df['电话'].str.slice(3,7)抽取手机号码中间四位,判断号码区域
areas
[Python] 纯文本查看 复制代码 tell=df['电话'].str.slice(7,11)#抽取手机号码后四位
tell
2、字段拆分
[Python] 纯文本查看 复制代码 df=read_excel('E:\Python\《基于Python的大数据分析基础及实战》064992【配套资源】\数据及相关的资料\i_nuc.xls',sheetname='Sheet4')
df['IP'].str.strip()#ip先转为str,再删除首位空格
newDF=df['IP'].str.split('.',1,True)#按第一个.分成两列,1表示新增的列数
newDF
newDF.columns=['IP1','IP2-4']#给第1、2列增加列名称
newDF
3、重置索引
[Python] 纯文本查看 复制代码 from pandas import Series
from pandas import DataFrame
df=DataFrame({'age':[26,85,64,85,85],'name':['Ben','John','Jerry','John','John']})
df1=df.set_index('name')#以name列为新的索引
df1
df1.ix['John']#使用ix函数对John用户信息进行提取
4、记录抽取
|