調査に2つの質問があるとします。1つは、個人が会社を推薦する可能性についてです(簡単にするために2つの会社があるとしましょう)。
したがって、この質問には2つの列を持つ1つのdata.frameがあります。
df.recommend <- data.frame(rep(1:5,20),rep(1:5,20))
colnames(df.recommend) <- c("Company1","Company2")
また、回答者に、会社に「適合する」と信じている属性の横にあるボックスにチェックマークを付けるように求める別の質問があるとします。
したがって、この質問には4列の別のdata.frameがあります。
df.attribute <- data.frame(rep(0:1,50),rep(1:0,50),rep(0:1,50),rep(1:0,50))
colnames(df.attribute) <- c(
"Attribute1.Company1",
"Attribute2.Company1",
"Attribute1.Company2",
"Attribute2.Company2")
さて、私がやりたいのは、すべての企業(会社に依存しない)について、属性1と2が質問を推奨する可能性のあるスケールにどのように関連しているかを確認することです。たとえば、推奨する可能性が非常に高い人々と属性1の間にどのような慣性があるのかを知るためだけに。
それで、私は2つの質問を結びつけることから始めます:
df <- cbind(df.recommend, df.attribute)
私の問題は、列が次のようになるようにこれらのデータをスタックする方法を理解しようとしています。
df.stacked <- data.frame(c(df$Company1,df$Company2),
c(df$Attribute1.Company1,df$Attribute1.Company2),
c(df$Attribute2.Company1,df$Attribute2.Company2))
colnames(df.stacked) <- c("Likelihood","Attribute1","Attribute2")
この例は大幅に簡略化されています。私の実際の問題では、34の会社と24の属性があります。
すべてのc()ステートメントを入力せずに、それらを効果的にスタックする方法を考えられますか?
注:可能性の列パターンはCo1、Co2、Co3、Co4 ...であり、属性のパターンはAt1.Co1、At2.Co1、At3.Co1 ... At1.Co34、At2.Co34...です。