条件ごとに各グループを合計したいとします。私は、次のデータdata.tableに条件付きのグループごとの合計
a<-data.table (facto=c ("a","b","a","a","b","b","b"), value = c (2,3,2,3,2,2,2))
facto value
1: a 2
2: b 3
3: a 2
4: a 3
5: b 2
6: b 2
7: b 2
を持っていると私は彼らの価値がdata.table
を使用して3と等しくない事実上の合計を計算したいと思います。
私は
output <-a[, (value=sum(value!=3)), .(facto)]
このコードを使用し、それは私に、グループごとに3に等しくない行をカウントし、次のデータを提供します:
facto V1
1: a 2
2: b 3
しかし、私が持っていたいです次の出力:
facto V1
1: a 4
2: b 6
'DT [I、J、によって] '。 i j byはSQLと似ています:WHERE SELECT GROUP BY。つまり、 '' data.table'をとり、 'i'を使って行を部分集合し、次に' by'でグループ化された 'j'を計算します。 – snoram