我有一个数据框,上面有这样的调查数据,每一行都是不同的应答者。在
weight race Question_1 Question_2 Question_3
0.9 white 1 5 4
1.1 asian 5 4 3
0.95 white 2 1 5
1.25 black 5 4 3
0.80 other 4 5 2
每个问题都是从1到5的量表(实际数据中还有几个问题)。对于每一个问题,我试图计算回答5分的受访者的百分比,按种族分组并按权重列加权。在
我相信下面的代码可以用来计算按种族分组的每个问题回答5的百分比。但我不知道如何通过权重列来衡量它的权重。在
^{pr2}$我对熊猫不熟悉。有人能解释一下怎么做吗?谢谢你的帮助。在
编辑:上面数据帧的期望输出如下所示。显然,真实的数据有更多的受访者(行)和更多的问题。在
Question_1 Question_2 Question_3
white 0.00 0.49 0.51
black 1.00 0.00 0.00
asian 1.00 0.00 0.00
other 0.00 1.00 0.00
谢谢。在
这里有一个解决方案,通过定义一个自定义函数并将该函数应用于每个列。然后,您可以将每个列连接到一个数据帧中:
输出:
^{pr2}$下面是问题1的答案。你可以很容易地把它推广到其他问题上。在
基本上,你首先用种族来计算权重和权重的总和,然后除以权重之和。 这就是加权平均数。在
相关问题 更多 >
编程相关推荐