データフレーム内の各列の単方向頻度テーブル(各列の各固有値の数)を取得します。私はthis tutorialに従っています。これはplyr
パッケージのcount()関数を使うことを示唆しています。freq()は、印刷時に列の名前を変更します。
for (col in mtcars[c("gear","carb")]){
freq <- count(col)
write.table(freq, file='filename.txt')
}
私は、出力は次のようになりことを期待する:
gear freq
1 3 15
2 4 12
3 5 5
代わりに列名が 'X' に置き換えられます。
x freq
1 3 15
2 4 12
3 5 5
なぜこの出来事があり、どのようにすることができますforループを変更して、 'x'の代わりに列名を出力するようにしましたか?
は(おそらくforループを使用するよりも、この他を行うには良い、ベクトル化方法はありますが、私はRに新たなんだと、かなりの構文を把握することはできません。)
'count'機能からですか?また、ループ内の 'col'の値について考えてみましょう。それはベクターですか?それはdata.frameですか?名前はありますか? – Axeman