次の形式のデータ フレームがあります。
name workplace
a A
b B
c A
d C
e D
....
このデータ フレームを R のアフィリエーション ネットワークに次の形式で変換したいと思います。
A B C D ...
a 1 0 0 0
b 0 1 0 0
c 1 0 0 0
d 0 0 1 0
e 0 0 0 1
...
そして、私は次のプログラムを使用しました:
for (i in 1:nrow(A1)) {
a1[rownames(a1) == A1$name[i],
colnames(a1) == A1$workplace[i]] <- 1
}
ここで、A1 はデータ フレーム、a1 は所属ネットワークです。ただし、大きなデータ フレームがあるため、上記のプログラムの実行は非常に遅くなります。データ変換のループを回避する効率的な方法はありますか?
どうもありがとうございました!