【发布时间】:2018-04-26 12:46:18
【问题描述】:
我有下面的数据框,其中包含一个 NA 值,我想创建一个名为 Percentages 的新列所以 df$percentages,以便它作为值列中每个数字的百分比除以总数
Country Information Value percentage
1 UK Cars 50 0.50
2 UK Sheep 20 0.20
3 UK Cats 15 0.15
4 UK Dogs 10 0.10
5 UK Shoes 5 0.05
6 UK Hats NA NA (or 0 or NULL)
7 Total 100 1.00
关于如何创建该百分比列的任何想法?
我尝试了所有不同的方法,但没有解决方案!
感谢任何帮助!
【问题讨论】:
-
df$percentage <- df$value/sum(df$value, na.rm = T) -
不完全,仍然得到不是百分比的大值 - 有什么想法吗?
-
你的数据集中有负值吗?因为如果值为正数,
sum(df$value)应该始终高于或等于df$value的任何值。 -
值是数据框中的值,没有负值,但我得到的值例如数字 50 为 0.25?哪个是正确的?
-
那是因为您在总和中计算“总计”,所以您将 50 除以 50+20+15+10+5+100 = 200 而不是 100。我提供了通用解决方案。从数据集中排除最后一行。
标签: r dataframe statistics percentage