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

简介: 技巧 | 分享几个Pandas高效函数(二)

大家好,我是欧K~

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

1. 一行数据展开成多行(explode)

2. 多行数据合并成一行

3. 列依次的累加(cumsum)

4. 分组统计生成新的Dataframe

5. 指定位置插入列(insert)

6. 列条件替换(where)

示例数据:

df2 = pd.DataFrame({'id':['a','b','a','c'], 'data_1':[3,7,[1,4,5],9], 'data_2':[1,1,1,1]})




1. 将一行数据展开成多行(explode)

列表展开:

df2.explode('data_1').reset_index(drop=True)



2. 多行数据合并成一行

按id合并:

df2.groupby(['id']).agg({'data_1': [', '.join],'data_1': lambda x: list(x)}).reset_index()



3. 列依次的累加(cumsum)

类似打卡记录:

df2['data_cumsum'] = df2[['data_2','id']].groupby('id').cumsum()


4. 分组统计生成新的Dataframe

按id分组:

df2.groupby('id')['data_2'].count().to_frame('数量').reset_index()



5. 指定位置插入列(insert)

在第三列位置插入新列(从0开始计算):

new_col = np.random.randint(1,10,size=6)
df2.insert(1, 'data_0', new_col)



6. 列条件替换(where)

指定列小于5的值替换成0:

df2['data_1'] = df2['data_1'].where(df2['data_1'] > 5 , 0)


END


以上就是本期为大家整理的全部内容了,赶快练习起来吧,喜欢的朋友可以点赞、点在看也可以分享让更多人知道


相关文章
|
2月前
|
Serverless 数据处理 索引
Pandas中的shift函数:轻松实现数据的前后移动
Pandas中的shift函数:轻松实现数据的前后移动
184 0
|
2月前
|
数据采集 数据可视化 数据挖掘
Pandas函数大合集:数据处理神器一网打尽!
Pandas函数大合集:数据处理神器一网打尽!
38 0
|
18天前
|
Python
|
18天前
|
Python
|
17天前
|
Python
Pandas 常用函数-数据合并
Pandas 常用函数-数据合并
31 1
|
18天前
|
索引 Python
Pandas 常用函数-数据排序
10月更文挑战第28天
8 1
|
19天前
|
数据采集 Python
Pandas 常用函数-数据清洗
Pandas 常用函数-数据清洗
17 2
|
19天前
|
Python
Pandas 常用函数-查看数据
Pandas 常用函数-查看数据
14 2
|
19天前
|
SQL JSON 数据库
Pandas 常用函数-读取数据
Pandas 常用函数-读取数据
13 2
|
17天前
|
BI Python
Pandas 常用函数-数据统计和描述
Pandas 常用函数-数据统计和描述
51 0
下一篇
无影云桌面