我有一个长格式数据集,每行都是另一个度量(由我的" timeline.compressed"变量指示,它有8个可能的值;请参阅下面的dput)。
但是,现在我想检查一些变量(即x1-x3)的描述性统计数据,但是要分别检查每个时间点。我尝试过使用if功能,但这会给我一个警告:条件长度> 1。
是否有人知道我应该使用哪些代码来分别获取每个时间点的摘要统计信息?
包含可能的时间轴值的表的输入:
structure(c(7518L, 6178L, 6393L, 5886L, 6121L, 5977L, 7440L,
5886L), .Dim = 8L, .Dimnames = structure(list(c("5", "16", "28",
"40", "52", "64", "79", "95")), .Names = ""), class = "table")
dput例如数据集
structure(list(nomem_encr = c(800009L, 800009L, 800012L, 800015L,
800015L, 800015L), timeline.compressed = c(79, 95, 79, 28, 40,
52), sel = c(4.9, NA, NA, 6.9, 6.7, NA), close_num = c(1, 0.2,
1, 0.8, 1, 0.8), gener_sat = c(7, 7, 8, 7, 7, 5)), .Names = c("ID",
"timeline.compressed", "x1", "x2", "x3"), row.names = c(NA,
6L), class = "data.frame")
答案 0 :(得分:0)
使用dplyr,你可以做到,例如timeline_values是您的频率表,df是您的数据
data.frame(timeline.compressed = as.numeric(names(timeline_values))) %>%
left_join(df) %>%
group_by(timeline.compressed) %>%
summarize_all(mean, na.rm = TRUE)