2
私はこのようになり、データフレーム持っている:私がする必要がどのようなデータフレームの列を注文次に貼り付け行名
> testdata
topic1 topic2 topic3 topic4 topic5
church 0.011 0.003 0.001 0.001 0.012
of 0.094 0.085 0.098 0.063 0.051
the 0.143 0.115 0.159 0.083 0.097
appearance 0.000 0.000 0.002 0.005 0.040
restrain 0.000 0.000 0.000 0.000 0.000
は5列、各列でも5行で、新たなデータフレームを作成することですこのデータフレームの整列された行の名前です。言い換えれば、データフレームを降順で各列で順序付けし、その列の上に行の名前を印刷する必要があります。この例では、私が必要とするデータフレームは、ここで
> testdata_word_ranks
topic1 topic2 topic3 topic4 topic5
church the the the the the
of of of of of of
the church church appearance appearance appearance
appearance appearance appearance church church church
restrain restrain restrain restrain restrain restrain
になり、新たなデータフレームに上記testdata_word_ranks
の列を割り当てることで、私の失敗した試みです:
for(i in 1:nrow(testdata)){
minidf = data.frame(rownames(testdata), testdata[,i])
assign(paste0('testdata_word_ranks$topic', i),
as.vector(minidf[order(minidf[,2], decreasing = TRUE),]$rownames.testdata))
}
ちょうどあなたの情報のため、このデータ特定のコーパス上のトピックモデルから来ています。
代替試み - '置き換える(TESTDATA ,, rownames(テストデータ)sapply(-testdata、オーダー)])' – thelatemail