一些数据处理操作

基本操作

#前n行
df.head(n)
#最后n行
df.tail(n)
#列名
df.columns
#表大小
df.shape
#基本统计数据count、min、max等
df.describe()
#基本信息,数据条数,列名,列类型等
df.info()
#统计缺失值
df.isnull().sum()
#生成报告
profile= pandas_profiling.ProfileReport(df)
profile
profile.to_file('profile.html') 
#数据之间相关系数
df.corr()
#画成图并显示
plt.figure(figsize=(10,10))
sns.heatmap(df.corr(), annot=True, fmt='.lf', square=True)
plt.show()
#表中某项为空的行取出
df_null=df[df['arpu_202004'].isnull()].copy()
df_test = df[df.label.isna()]
#取出某项不为空的行
df_train = df[df.label.notna()]
#将nan填充为0
df_voc.voc_day_out_count.fillna(0)
#列值统计
df_null.label.value_counts()
#删除列
df.drop(['a','b'],axis=1)
#删除一列
del df['a']
#删除多列 
del [df['sex'],df['cp'],df['restecg'],df['exang']]
#删除行
df.drop('a',axis=0)
#删除重复数据
sub.drop_duplicates(keep='last',subset='phone_no_m',inplace=True)
#按条件修改数据某一列值(要修改的列[条件]="修改后的值")
df.sex[df.sex=='1']='man'
df.sex[df.sex=='0']='woman'
#数据类型转换
df['sex']=df['sex'].astype('str')

时间相关操作

#设置一个时间类型数据
start=pd.Timestamp('2019-08-01 0:0')
#时间转换
voc["start_datetime"] = pd.to_datetime(voc['start_datetime'] )
#提取天数,月份等
voc['day']=voc['start_datetime'].dt.day
voc['month']=voc['start_datetime'].dt.month
#取某个时间段的数据
voc=voc[voc['start_datetime']>='2020-03-01 00:00:00']
#计算时间差
voc['voc_ts']=pd.to_timedelta( voc['start_datetime']-start, unit='ns').dt.total_seconds().astype(int)

groupby

#分组,并统计数据,标准差、最大值、计数
tmp=voc.groupby(['phone_no_m', 'month','day'])['voc_ts'].agg(day_voc_std='std',day_voc_min='min',day_voc_max='max',day_voc_count='count')

连接

链接: pandas dataframe的合并(append, merge, concat).

#单纯拼接两个表,横纵均可,axis指定拼接方向,1横向,0纵向
df=pd.concat([df_train,df_test])
#join两个表不含重叠列名,以索引连接
df=df.join(tmp,how='left')
#merge以两个表重叠的列名作连接键,默认内连接
df_voc=df_voc.merge(tmp,on=['phone_no_m','day'],how='left')
#在表后添加表
df.append(df2)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值