我有以下的數據幀,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