前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >技巧 | 分享几个Pandas高效函数

技巧 | 分享几个Pandas高效函数

原创
作者头像
码农向前冲
发布2022-01-05 20:46:31
3160
发布2022-01-05 20:46:31
举报
文章被收录于专栏:Python学习必看

大家好~

本期给大家推荐几个pandas高效数据处理函数(持续更新),希望对你有所帮助:

  1. 字典创建Dataframe
  2. 列拆分(split/extract)
  3. 列合并(cat)
  4. 左右填充(pad)
  5. 根据类型筛选列(select_dtypes)
  6. 排序(rank)

1. 字典创建Dataframe

代码语言:txt
复制
df_dict = {'name':['Alice_001','Bob_002','Cindy_003','Eric_004','Helen_005','Grace_006'],'sex':['female','male','female','male','female','male'],'math':[90,89,99,78,97,93],'english':[95,94,80,94,94,90]}
#[1].直接写入参数test_dict
df = pd.DataFrame(df_dict)
#[2].字典型赋值
df = pd.DataFrame(data=df_dict)

2. 列拆分(split/extract)

字符拆分:

代码语言:txt
复制
df1[['name', 'id']] = df1['name'].str.split('_', 2, expand = True)

正则表达式拆分:

代码语言:txt
复制
df2 = df.copy()
df2['name2'] = df2['name'].str.extract('([A-Z]+[a-z]+)')
df2['id2'] = df2['name'].str.extract('(\d+)')

3. 列合并(cat)

自定义连接符:

代码语言:txt
复制
df1["name_id"] = df1["name"].str.cat(df1["id"],sep='_'*3)

某列合并输出:

代码语言:txt
复制
df1["name"].str.cat(sep='*'*5)

4. 左右填充(pad)

左填充:

代码语言:txt
复制
df1["id"] = df1["id"].str.pad(10,fillchar="*") 
# 相当于ljust()
df1["id"] = df1["id"].str.rjust(10,fillchar="*")

右填充:

代码语言:txt
复制
df1["id"] = df1["id"].str.pad(10,side="right",fillchar="*")

两侧填充:

代码语言:txt
复制
df1["id"] = df1["id"].str.pad(10,side="both",fillchar="*")

5. 根据类型筛选列(select_dtypes)

筛选数值列:

代码语言:txt
复制
df1.select_dtypes(include=['float64', 'int64'])

筛选object列:

代码语言:txt
复制
df1.select_dtypes(include=['object'])

6. 排序(rank)

英语成绩排名:

代码语言:txt
复制
df1['e_rank'] = df1['english'].rank(method='min',ascending=False)

94分有三个,所以三个并列第2。

以上就是本期为大家整理的全部内容了,赶快练习起来吧

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 字典创建Dataframe
  • 2. 列拆分(split/extract)
  • 3. 列合并(cat)
  • 4. 左右填充(pad)
  • 5. 根据类型筛选列(select_dtypes)
  • 6. 排序(rank)
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档