计算pandas DataFrame中的行百分比?
发布于 2021-01-29 16:15:06
我将数据存储在pandas DataFrame中,如下所示:
cat val1 val2 val3 val4
A 7 10 0 19
B 10 2 1 14
C 5 15 6 16
我想计算cat
每个值具有的类别()的百分比。
例如,对于category A
,val1
为7,行总计为36。结果值为7/36,因此val1
是category的19.4%A
。
我的预期结果如下所示:
cat val1 val2 val3 val4
A .194 .278 .0 .528
B .370 .074 .037 .519
C .119 .357 .143 .381
有一个简单的方法来计算这个吗?
关注者
0
被浏览
118
1 个回答
-
div +总和
对于矢量解决方案,将数据帧除
axis=0
以其总和axis=1
。您可以使用set_index
+reset_index
忽略标识符列。df = df.set_index('cat') res = df.div(df.sum(axis=1), axis=0) print(res.reset_index()) cat val1 val2 val3 val4 0 A 0.194444 0.277778 0.000000 0.527778 1 B 0.370370 0.074074 0.037037 0.518519 2 C 0.119048 0.357143 0.142857 0.380952
推荐阅读
-
如何使用Pandas的DataFrame计算百分比
2021-01-29 关注 0 浏览187 1答案
-
DataFrame分组依据上的pandas百分比计数
2021-01-29 关注 0 浏览104 1答案
-
列中按值表示的pandas百分比
2021-01-29 关注 0 浏览90 1答案
-
如何使用pandas计算与初始值相比的变化百分比?
2021-01-29 关注 0 浏览75 1答案
-
MySQL计算百分比
2021-02-02 关注 0 浏览136 1答案
-
如何计算SQL Server 2012中每一行的百分比?
2021-06-04 关注 0 浏览141 1答案
-
计算上一行值的增加/减少百分比
2021-03-27 关注 0 浏览75 1答案
-
使用 groupby 的 Pandas 占总数的百分比
2022-07-28 关注 0 浏览22 1答案
-
Mysql仅选择行的百分比
2021-03-12 关注 0 浏览82 1答案
-
pandas:用百分比制作数据透视表
2021-01-29 关注 0 浏览73 1答案