【Python】pandas 将某列相同值作为index, 整合数据

pd.pivot_table

# df
                valueUpdateTime factorName   value
0    2023-03-28 08:00:18.532805         风向  147.69
1    2023-03-28 08:00:18.532805         气压  101.71
2    2023-03-28 08:00:18.532805         风速    0.28
3    2023-03-28 08:00:18.532805         温度   18.55
4    2023-03-28 08:00:18.532805         湿度   91.76
                         ...        ...     ...
1057 2023-03-28 08:29:59.201065         风速    0.96
1058 2023-03-28 08:29:59.201065         气压  101.74
1059 2023-03-28 08:29:59.201065         风向  139.06
1060 2023-03-28 08:29:59.201065         湿度   91.27
1061 2023-03-28 08:29:59.201065         温度   18.76

# df2
df2 = pd.pivot_table(df, index=['valueUpdateTime'], columns=['factorName'], value='value')

factorName                  TVOC      气压     温度     湿度      风向    风速
valueUpdateTime                                                     
2023-03-28 08:00:18.532805  9.59  101.71  18.55  91.76  147.69  0.28
2023-03-28 08:00:19.527816  9.59  101.71  18.53  91.76  110.31  0.88
2023-03-28 08:00:29.256678  9.59  101.71  18.53  91.79   93.97  0.77
2023-03-28 08:00:39.290946  9.59  101.71  18.59  91.76    0.00  0.00
2023-03-28 08:00:49.247142  9.59  101.71  18.56  91.76  248.48  0.46
                          ...     ...    ...    ...     ...   ...
2023-03-28 08:29:19.192815  9.63  101.73  18.80  91.36  156.58  1.03
2023-03-28 08:29:29.192907  9.63  101.73  18.77  91.35  149.69  1.14
2023-03-28 08:29:39.192674  9.63  101.73  18.77  91.28   10.41  0.59
2023-03-28 08:29:49.219851  9.63  101.74  18.79  91.26   73.64  0.23
2023-03-28 08:29:59.201065  9.63  101.74  18.76  91.27  139.06  0.96

用法

# df
        账号             客户名称   销售  销售总监     产品  数量    价格   状态
0   714466        华山派股份有限公司  令狐冲   岳不群  黑玉断续膏   1  3000  流程中
1   714466        华山派股份有限公司  令狐冲   岳不群   葵花宝典   2  2000  流程中
2   714466        华山派股份有限公司  令狐冲   岳不群  含笑半步癫   1  1000  待审批
3   737550     丐帮(北京) 合伙人公司  令狐冲   岳不群  黑玉断续膏   3  3000   驳回
4   146832        恶人谷资产管理公司  江小鱼   岳不群  黑玉断续膏   1  1000  已完成
5   218895              桃花岛  江小鱼   岳不群  黑玉断续膏   3  3000  流程中
6   218895              桃花岛  江小鱼   岳不群   葵花宝典   1  1000  流程中
7   412290             有间客栈   段誉   岳不群  含笑半步癫   2  2000  待审批
8   740150            逍遥子影业   段誉   岳不群  黑玉断续膏   4  4000   驳回
9   141962  白驼山(上海)影视艺术有限公司  欧阳克  完颜洪烈  黑玉断续膏   2  2000  已完成
10  163416              聚贤庄  欧阳克  完颜洪烈  黑玉断续膏   2  2000  流程中
11  239344            全真教药业  欧阳克  完颜洪烈  含笑半步癫   1  1000  待审批
12  239344            全真教药业  欧阳克  完颜洪烈   葵花宝典   3  2000  待审批
13  307599            天地会快递  韦小宝  完颜洪烈  含笑半步癫   5  3000  已完成
14  688981              福寿堂  韦小宝  完颜洪烈  黑玉断续膏   2  1000  已完成
15  729833      快手三教育培训有限公司  韦小宝  完颜洪烈  黑玉断续膏   3  4000   驳回
16  729833      快手三教育培训有限公司  韦小宝  完颜洪烈    如意勾   1  2000  流程中

pd.pivot_table(df, index=['销售总监', '销售', '客户名称', '产品'], values=['价格'], aggfunc=[np.sum], columns=['状态'], fill_value=0)

								sum			
								价格			
						状态	已完成	待审批	流程中	驳回
销售总监	销售	客户名称				产品				
完颜洪烈	欧阳克	全真教药业			含笑半步癫	0	1000	0	0
						葵花宝典		0	2000	0	0
		白驼山(上海)影视艺术有限公司	黑玉断续膏	2000	0	0	0
		聚贤庄				黑玉断续膏	0	0	2000	0
	韦小宝	天地会快递			含笑半步癫	3000	0	0	0
		快手三教育培训有限公司		如意勾		0	0	2000	0
						黑玉断续膏	0	0	0	4000
		福寿堂				黑玉断续膏	1000	0	0	0
岳不群	令狐冲	丐帮(北京) 合伙人公司		黑玉断续膏	0	0	0	3000
		华山派股份有限公司			含笑半步癫	0	1000	0	0
						葵花宝典		0	0	2000	0
						黑玉断续膏	0	0	3000	0
	段誉	有间客栈				含笑半步癫	0	2000	0	0
		逍遥子影业			黑玉断续膏	0	0	0	4000
	江小鱼	恶人谷资产管理公司			黑玉断续膏	1000	0	0	0
		桃花岛				葵花宝典		0	0	1000	0
						黑玉断续膏	0	0	3000	0
![image](https://img2023.cnblogs.com/blog/1511320/202304/1511320-20230414155252945-581615916.png)

posted @   是阿杰呀  阅读(65)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
历史上的今天:
2022-04-14 【python】字典删除元素的四种方法
点击右上角即可分享
微信分享提示