请考虑以下数据框:
set.seed(123)
dat <- data.frame(Region = rep(c("a","b"), each=100),
State =rep(c("NY","MA","FL","GA"), each = 50),
Loc = rep(letters[1:20], each = 5),
ID = 1:200,
count1 = sample(4, 200, replace=T),
count2 = sample(4, 200, replace=T))
单个观察结果用不明确的ID
表示。每个观察值有三个分组变量:Region
,State
和Loc
。可以说我知道以下条件成立:-count1
等于1时,count2
应该等于2-count1
等于2时,count2
应该等于4-count1
等于3时,count2
应该等于1-count1
等于4时,count2
等于3
我想回答以下类型的问题:1. Region
和State
]的每个级别中有多少个观察值属于每个分组变量(Loc
,count1
,count2
)>
ID
属于哪个级别的count1
和count2
(以及这些ID
属于哪个分组变量]
上面概述的条件多久满足一次,而它们不多久满足一次
对于哪些分组变量和ID
,这些条件成立,对于哪些条件不成立
当条件不成立时,实际观察到的结果(例如,当count1
等于1时,count2
应该等于2;因此,当count1
等于1但count2
不等于2时,则count2
等于什么)。
我如何指定这些条件并生成整洁的类似汇总的表格来回答这些问题?您可以认为count1
和count2
的级别与某些特征相关联,我想了解这些级别之间以及与分组变量之间的关系。如果有人对这些类型的问题有任何图形化的可视化想法,那也将非常有帮助!
请考虑以下数据帧:set.seed(123)dat
这是解决问题1和2的一种方法,尽管这有点涉及。我正在使用tidyr
pivot_wider
为count1
和count2
的每个唯一值创建列。 length
中的函数values_fn
计算由pivot_wider
创建的矢量中相关组合的元素数量。由于我们分别需要count1
和count2
的答案,因此我两次运行pivot_wider
。然后将结果与bind_cols
合并,并删除多余的色谱柱。稍加思考,就可以改善所有这些情况。