以前、リスト ビューからクロス テーブルを作成する方法について質問しました。これを使用することをお勧めしましたがxtabs
、これはうまく機能します。今日は逆にクロステーブルからリストビューテーブルを作ろうと探していました。逆の式を見つけたいと思っていましたが、成功していません。これには定義済みの関数があると確信していますが、それを見つけることができません。
次の表があります。
# load table
crosstable <- structure(list(col1 = c(0, 0, 1, 0, 0, 0, 0, 0, 0), col2 = c(0, 1, 0, 0, 0, 0, 0, 0, 0), col3 = c(0, 0, 0, 0, 0, 0, 0, 0, 1), col4 = c(1, 0, 0, 0, 0, 0, 0, 0, 0), col5 = c(0, 0, 0, 0, 0, 0, 0, 1, 0), col6 = c(0, 0, 0, 0, 0, 1, 0, 0, 0), col7 = c(0, 0, 0, 0, 1, 0, 0, 0, 0), col8 = c(0, 0, 0, 0, 0, 0, 1, 0, 0)), .Names = c("col1", "col2", "col3", "col4", "col5", "col6", "col7", "col8"), row.names = c("row1", "row2", "row3", "row4", "row5", "row6", "row7", "row8", "row9"), class = "data.frame")
#display table
crosstable
col1 col2 col3 col4 col5 col6 col7 col8
row1 0 0 0 1 0 0 0 0
row2 0 1 0 0 0 0 0 0
row3 1 0 0 0 0 0 0 0
row4 0 0 0 0 0 0 0 0
row5 0 0 0 0 0 0 1 0
row6 0 0 0 0 0 1 0 0
row7 0 0 0 0 0 0 0 1
row8 0 0 0 0 1 0 0 0
row9 0 0 1 0 0 0 0 0
これを次のような表に変換したいと思います。
row1 col1 0
row1 col2 0
row1 col3 0
row1 col4 1
row1 col5 0
...
これを達成するのに役立つ関数の方向に私を向けることができる人はいますか?