【发布时间】:2018-07-16 20:29:52
【问题描述】:
所以我试图在我的数据表中创建一个包含不同记录计数的表
mytable <-
group team num ID
1 a x 1 9
2 a x 2 4
3 a y 3 5
4 a y 4 9
5 b x 1 7
6 b y 4 4
7 b x 3 9
8 b y 2 8
列名是 group、team、num 和 ID。我想要一个单独的表,其中包含每列中不同记录的计数。我希望表名的格式为“table_colName”
colName <- c('group','team','num','ID')
for (col in colName)
'table_'+colName <- mytable %>% group_by(col) %>% summarise(Count = n())
这会生成错误“grouped_df_impl(data, unname(vars), drop) 中的错误:列 col 未知”。
有没有一种方法可以使用我的数据表中的列遍历 group_by 函数,并每次将其保存到一个新的数据表中,以便在本例中最终得到 table_group、table_team、table_num 和 table_ID?
【问题讨论】:
-
见
group_by_at()。 -
以后请将您的示例数据以可重现的格式放置,例如使用
dput()或在您的问题中创建数据(在代码中)。 -
与 Hack-R 的建议相关,您可以类似地明确提供一个包含所需输出的对象,这样您就不需要在有人发布答案后进行澄清 cmets。关于此类事情的一些指导:stackoverflow.com/questions/5963269/…
标签: r dplyr data.table