7 つの変数と 1000 行を超える 103 個のデータ フレームがあります。1 つのデータ フレームの 2 つの列のペアが他の 102 データ フレームに出現する回数を調べたいと考えています。つまり、他の 102 個のデータ フレームで何回c(V1,V2)
一緒に (= データ フレームの 2 つの列を一緒に) 見ることができるかということです。
すでにコードを書いていますが、非常に遅いです!
103 個すべてのデータ フレームをリストに入れ、データ フレームに変換します。次に、各データ フレームを 1 つずつ読み取る for ループを作成します。各ループには、そのリスト内のデータフレームの各行を検索するための別の for ループがあります!
コードの主要部分は次のとおりです。
for(i in file){
input<-read.table(i)
for(j in 1:1000){
df1<- data.table(input[j,c(1,3)])
count<-merge(df1,dt, c("V1", "V3")) //dt is a data frame includes all 103 data frames
df1["count"]<-nrow(count)
}
}
このようにして、データフレームの V1 と V3 のセットが他のデータフレームに何回来るかを数えることができます。しかし、すべての結果を得るには 50 日以上かかります。
希望する結果をより迅速に得る方法を誰かが手伝ってくれるのではないかと思います。
データ フレームの例 (ここでは 5 つの変数のみが考慮されます):
V1 V2 V3 V4 V5
1 Q0 abc 34 3
1 Q0 abd 31 9
1 Q0 bac 32 3
1 Q0 cba 56 0
2 Q0 zxc 37 3
2 Q0 fgc 30 3
2 Q0 ghc 36 3
実際、V3 と V1 は依存関係にあるため、V3 の各値が他のデータ フレームに含まれる回数を知りたいと考えています。検索では V1 も考慮する必要があります。c(V1,V3)
したがって、他のデータ フレームに何回来るかを確認する必要があります。たとえば (1,abc) 一緒に! または(1、abd)。
dt はデータ フレームと同じ構造ですが、私が持っているすべてのデータ フレームのすべてのデータが含まれています。