我有以下的数据帧,df
:R:组由多个列和计算
LeftOrRight SpeedCategory NumThruLanes
R 25to45 3
L 45to62 2
R Gt62 1
我想通过SpeedCategory组,并依次通过其他列得到的每个唯一代码的频率在每个速度类别 - 是这样的:
25to45 45to62 Gt62
LeftOrRight L 0 1 0
R 1 0 1
NumThruLanes 1 0 0 1
2 0 1 0
3 1 0 0
最近我已经能够来是这样的:
for (col in df){
tbl <- table(col, df$SpeedCategory)
print(tbl)
}
打印出以下(第一SpeedCategory,然后NumThruLanes):
col 25to45 45to62 Gt62
L 0 1 0
R 1 0 1
col 25to45 45to62 Gt62
1 0 0 1
2 0 1 0
3 1 0 0
我敢肯定,我可以完成我的目标与aggregate()
或从dplyr
也许GROUP_BY,但我是新来的R和想不通出语法。在pandas
我会使用MultiIndex
,但我不知道R等价物是什么,所以很难谷歌。
我想尝试通过一个循环或循环来完成所有任务,因为我有十几个要通过的列。
这正是我需要的,谢谢!最后,我不得不将所有的列转换为lapply(df,factor)的因子,并且在那之后它运行良好。 – ale19