【发布时间】:2023-04-05 08:42:02
【问题描述】:
我有一个大型数据框,其中包含多个项目的有效数量,并希望将它们更改为相对频率。所以我添加了一个列,对每一行的列中的所有值求和:
product apple pear banana sum
Jean 3 5 1 9
Phil 2 7 1 10
Yanis 5 4 4 14
接下来我必须应用公式 x/sum(X)*100 来获取数据帧中每个值的相对频率,以便获得这样的数据帧:
product apple pear banana
Jean 33.33 55.55 11.11
Phil 20 70 10
Yanis 37.71 28.57 28.57
如果不指定每一列,我真的不知道该怎么做(这只是示例的一个小数据集)
我现在的代码:
df = pd.read_csv(f, sep="\t", index_col='product')
dff = df.transpose()
dff["sum"] = dff.sum(axis=1)
提前谢谢你
【问题讨论】:
标签: python pandas dataframe frequency