我将尝试使用数据框创建第二个摘要计数数据框,原始数据的结构如下:
我希望我的汇总数据框能够计算每个商店所拥有的家具类型,并给出每个商店库存的摘要(仅包含有或无的信息,而不是数量)。它应该像这样:
mydata <- read.table(header=TRUE, text="
item type store1 store2 store3 store4 store5
chair timber 0 1 4 0 6
chair metal 0 1 4 1 9
chair upholstered 3 0 0 1 1
table indoor 1 8 0 1 0
table outdoor 1 12 2 1 0
bed single 0 0 2 1 0
bed double 0 1 1 1 0
bed queen 1 0 0 1 3
bed king 5 0 1 3 0")
我希望我的汇总数据框能够计算每个商店所拥有的家具类型,并给出每个商店库存的摘要(仅包含有或无的信息,而不是数量)。它应该像这样:
summary <- read.table(header=TRUE, text="
store chair_types table_types bed_types total_types
store1 1 2 2 5
store2 2 2 1 5
store3 2 1 3 6
store4 2 2 4 8
store5 3 0 1 4")
这个在Excel里很容易实现,但我想去学习如何用正确的方式来做这件事。如果这是一个重复问题,我道歉了,因为我没有找到类似的例子。先提前谢谢你。
group_by(mydata, item) %>% summarize_if(is.numeric, sum(.!=0))
代替你的summarize_each
代码。我以为这会起作用,但是我收到了以下错误信息:Error in UseMethod("as.fun_list") : no applicable method for 'as.fun_list' applied to an object of class "c('integer', 'numeric')"
有什么想法吗? - jazzurromydata %>% mutate_each(funs(.!=0), store1:store5) %>% group_by(item) %>% summarise_if(is.logical, sum)
。 - akrunfuns
可能会避免这种问题吗? - jazzurro