特定のデータ フレームについて、配列の値をデータ フレームの列に乗算したいと考えています。データ フレームは、名前、数値、および 2 つの係数値を含む行で構成されます。
name credit gender group
n1 10 m A
n2 20 f B
n3 30 m A
n4 40 m B
n5 50 f C
このデータ フレームは、次のコマンドを使用して生成できます。
name <- c('n1','n2','n3','n4','n5')
credit <- c(10,20,30,40,50)
gender <- c('m','f','m','m','f')
group <- c('A','B','A','B','C')
DF <-data.frame(cbind(name,credit,gender,group))
# binds columns together and uses it as a data frame
さらに、データ フレームから派生した行列があります (より複雑なケースでは、これは配列になります)。この行列には、特定のカテゴリ (m/f および A/B/C で特徴付けられる) に分類されるすべての契約の合計値が含まれます。
m f
A 40 NA
B 40 20
C NA 50
目標は、マトリックスの各カテゴリに割り当てられた対応する値を使用して DF$credit の値を乗算することです。たとえば、DF の最初の行の値 10 は 40 (m と A によって定義されるカテゴリ) で乗算されます。
結果は次のようになります。
name credit gender group result
n1 10 m A 400
n2 20 f B 400
n3 30 m A 1200
n4 40 m B 1600
n5 50 f C 2500
可能であれば、R ベース パッケージを使用してこれを実行したいと考えていますが、適切に機能する有用なソリューションについてはオープンです。