数据分析学习记录贴(持续更新。。。)2019/8/2
本帖最后由 袅袅系秋风 于 2019-8-2 14:45 编辑使用工具:anaconda
2019.8.2
#去除重复数据
df1=DataFrame({'age':,'name':['Ben','John','Jerry','John','John']})
print(df1)
df1.duplicated()
df1.duplicated('name')
df1.duplicated('age')
df1.drop_duplicates()
#缺失值处理
from pandas import read_excel
df=read_excel(r'C:\Users\fyz\Desktop\0814171成绩统计表.xlsx',skiprows=)
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、字段抽取
df=read_excel('E:\Python\《基于Python的大数据分析基础及实战》064992【配套资源】\数据及相关的资料\i_nuc.xls',sheetname='Sheet4')
df['电话']=df['电话'].astype(str)#转化类型
df['电话']
bands=df['电话'].str.slice(0,3)抽取手机号码前3位,判断号码运营商
bands
areas=df['电话'].str.slice(3,7)抽取手机号码中间四位,判断号码区域
areas
tell=df['电话'].str.slice(7,11)#抽取手机号码后四位
tell
2、字段拆分
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、重置索引
from pandas import Series
from pandas import DataFrame
df=DataFrame({'age':,'name':['Ben','John','Jerry','John','John']})
df1=df.set_index('name')#以name列为新的索引
df1
df1.ix['John']#使用ix函数对John用户信息进行提取
4、记录抽取
学习学习 楼主买的书跟我一样,我也正在学习这一本书。这本书入门还不错,楼主继续更新。 diyikuai 发表于 2019-8-2 23:41
楼主买的书跟我一样,我也正在学习这一本书。这本书入门还不错,楼主继续更新。
买不起,图书馆借的:lol 好吧!我只能自己买 这本书怎么样 niebaohua 发表于 2019-8-4 07:06
这本书怎么样
还行吧,很详细 {:1_927:}厉害,学习学习
页:
[1]