如何将汇总度量应用于匹配 R 中的 data.frame 列
How to apply a summarization measure to matching data.frame columns in R
我有一个假设的数据框如下:
# inventory of goods
year category count-of-good
2010 bikes 1
2011 bikes 3
2013 bikes 5
2010 skates 1
2011 skates 1
2013 skates 0
2010 skis 0
2011 skis 2
2013 skis 2
我的最终目标是展示 %-<good>-of-decade-total
逐年变化的堆积条形图。
因此,我想计算以下内容:
现在,我应该能够 ggplot(df, aes(factor(year), fill=percent.total.decade.goods) + geom_bar
或类似的(希望如此!)创建一个条形图,其中每个条形总和为 100%。
然而,我正在努力确定如何以非 hacky 方式获得 percent.good.of.decade.total
(最右边的列)。感谢您的宝贵时间!
您可以使用 dplyr 计算总和:
library("dplyr")
newDf=df%>%group_by(year)%>%mutate(decades.total.goods=sum(count.of.goods))%>%ungroup()
使用 mutate 或普通 R 语法来计算“十年总计的好百分比”
注意:您还没有分享您的确切数据框,因此这些名称显然是编造的。
我们可以通过 base R
中的 ave
来做到这一点
df1$decades.total.goods <- with(df1, ave(count.of.good, year, FUN = sum))
df1$decades.total.goods
#[1] 2 6 7 2 6 7 2 6 7
我有一个假设的数据框如下:
# inventory of goods
year category count-of-good
2010 bikes 1
2011 bikes 3
2013 bikes 5
2010 skates 1
2011 skates 1
2013 skates 0
2010 skis 0
2011 skis 2
2013 skis 2
我的最终目标是展示 %-<good>-of-decade-total
逐年变化的堆积条形图。
因此,我想计算以下内容:
现在,我应该能够 ggplot(df, aes(factor(year), fill=percent.total.decade.goods) + geom_bar
或类似的(希望如此!)创建一个条形图,其中每个条形总和为 100%。
然而,我正在努力确定如何以非 hacky 方式获得 percent.good.of.decade.total
(最右边的列)。感谢您的宝贵时间!
您可以使用 dplyr 计算总和:
library("dplyr")
newDf=df%>%group_by(year)%>%mutate(decades.total.goods=sum(count.of.goods))%>%ungroup()
使用 mutate 或普通 R 语法来计算“十年总计的好百分比”
注意:您还没有分享您的确切数据框,因此这些名称显然是编造的。
我们可以通过 base R
ave
来做到这一点
df1$decades.total.goods <- with(df1, ave(count.of.good, year, FUN = sum))
df1$decades.total.goods
#[1] 2 6 7 2 6 7 2 6 7