首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >数据分析熊猫

数据分析熊猫
EN

Stack Overflow用户
提问于 2020-11-03 19:19:17
回答 1查看 35关注 0票数 1

我正在开发一个非常广泛的数据集的分析,该数据集具有属性(g,月,p),这些属性是使用熊猫的groupby按组进行组织的。

代码语言:javascript
运行
复制
G   month   p
G1  1   0.040698496
G1  2   0.225640771
G1  3   0.236948047
G1  4   0.119339576
G1  5   0.779272432
G2  1   0.892168636
G2  2   0.062467967
G2  3   0.936044226
G3  1   0.509212613
G3  2   0.476718744
G3  3   0.407299543
G3  4   0.843260893
G4  1   0.882554249

然后,我按组G从1到n提取统计数据,如下所示

代码语言:javascript
运行
复制
    g1  g2  g3  gn
mean    0.280379864 0.630226943 0.559122948 …
std 0.290326376 0.49218285  0.194135874 …
count   5   3   4   …

需要创建一个新字段,它是组平均值与变量p的乘积,有一些方法可以使其自动...,由于扩展(超过200个组),单独完成需要花费大量时间。预期输出为

代码语言:javascript
运行
复制
G   month   p   STD*p
G1  1   0.040698496 0.011815847
G1  2   0.225640771 0.065509467
G1  3   0.236948047 0.068792268
G1  4   0.119339576 0.034647427
G1  5   0.779272432 0.226243341
G2  1   0.892168636 0.439110102
G2  2   0.062467967 0.030745662
G2  3   0.936044226 0.460704915
G3  1   0.509212613 0.098856436
G3  2   0.476718744 0.09254821
G3  3   0.407299543 0.079071453
G3  4   0.843260893 0.16370719
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-03 19:22:57

使用带有stdGroupBy.transform重复聚合值,因此可以使用multiple by p列:

代码语言:javascript
运行
复制
df['STD*p'] = df.groupby('G')['p'].transform('std').mul(df['p'])
print (df)
     G  month         p     STD*p
0   G1      1  0.040698  0.011816
1   G1      2  0.225641  0.065509
2   G1      3  0.236948  0.068792
3   G1      4  0.119340  0.034647
4   G1      5  0.779272  0.226243
5   G2      1  0.892169  0.439110
6   G2      2  0.062468  0.030746
7   G2      3  0.936044  0.460705
8   G3      1  0.509213  0.098856
9   G3      2  0.476719  0.092548
10  G3      3  0.407300  0.079071
11  G3      4  0.843261  0.163707
12  G4      1  0.882554       NaN
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64661839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档