您好我正在尝试为每个唯一ID制定模式。
换句话说,我想知道DAY,TRANS_TIME,WEEK_NO的每个household_key的模式。即每个家庭出现在哪一天最多等。
我已经整理了一些代码
library(dplyr)
randomtest <- mydata %>% group_by(household_key) %>%
summarise_each(funs(mode),DAY, TRANS_TIME, WEEK_NO)
输出:
household_key DAY TRANS_TIME WEEK_NO
1 1 numeric numeric numeric
2 2 numeric numeric numeric
3 3 numeric numeric numeric
4 4 numeric numeric numeric
5 5 numeric numeric numeric
6 6 numeric numeric numeric
7 7 numeric numeric numeric
8 8 numeric numeric numeric
9 9 numeric numeric numeric
10 10 numeric numeric numeric
我理解数字是指小数?这是否意味着我的答案是小数,如果是这样我怎么能改变它来汇总值并显示一个数字?
以下是我的数据框样本&lt; - mydata
household_key DAY TRANS_TIME WEEK_NO
2375 1 6 1
2375 1 6 1
2375 1 6 1
2375 1 6 1
2375 1 6 1
2375 1 6 1
2375 1 6 1
2375 1 6 1
2375 1 6 1
2375 1 6 1
2375 1 6 1
1364 1 6 1
1364 1 6 1
1364 1 6 1
1364 1 6 1
1364 1 6 1
1130 1 5 1
1130 1 5 1
1130 1 5 1
1130 1 5 1
1130 1 5 1
1173 1 7 1
1173 1 7 1
1173 1 7 1
1172 1 4 1
1172 1 4 1
1172 1 4 1
1172 1 4 1
1172 1 4 1
1172 1 4 1
1172 1 4 1
1172 1 4 1
1172 1 4 1
1172 1 4 1
答案 0 :(得分:1)
这是另一种方法:
smode <-function(x){
xtab<-table(x)
modes<-xtab[max(xtab)==xtab]
mag<-as.numeric(modes[1]) #in case mult. modes, this is safer
themodes<-names(modes)
mout<-list(themodes=themodes,modeval=mag)
return(mout)
}