私は熱心な R 初心者で、助けが必要です。:)
次のようなデータフレームがあります。
id<-c(100,200,300,400)
a<-c(1,1,0,1)
b<-c(1,0,1,0)
c<-c(0,0,1,1)
y=data.frame(id=id,a=a,b=b,c=c)
ここで、 idは一意の識別子 (例: 人) であり、 a、b、およびcは、その人がこの機能を持っているかどうかを表すダミー変数です (常に 1=TRUE)。
R に、変数 a、b、c を列と行の両方の名前として持つ行列またはデータ フレームを作成してもらいたいと思います。行列の値について、R は、この特徴を持つ識別子の数、または特徴の組み合わせを計算する必要があります。
したがって、たとえば、ID 100、200、および 400 は機能 a を持ち、マトリックスの対角線で a と a が交差している場合、R は 3 を入力します。ID 100 のみが機能 a と b の両方を持っているため、R は a と b の場合に 1 を入力します。クロスなど。
結果のデータ フレームは次のようになります。
l<-c("","a","b","c")
m<-c("a",3,1,1)
n<-c("b",1,2,1)
o<-c("c",1,1,2)
result<-matrix(c(l,m,n,o),nrow=4,ncol=4)
私のデータ セットには 10 個の変数と数百の観測値があるため、プロセス全体を自動化する必要があります。
どうぞよろしくお願いいたします。どうもありがとう!