異なる種(カラム1)の複数のカテゴリ(行1の異なる測定値)のいくつかの要約統計量(平均、sd、範囲、サンプルサイズ)を同時に生成し、「write .csv()を1つのデータファイルにまとめることができます。一度に1つの種を実行すれば十分ですが、すべての種のすべてのデータを1つの.csvファイルにまとめてまとめて統計情報を一度に生成したいと考えています。 "要約統計量R
要約統計量R
答えて
私はあなたが話していることを知っています。平均、標準偏差、範囲、およびサンプルサイズを取得したいとします。 Rは、データセット内で数値が小さく、カンマが一番大きい関数の範囲を与えるため、問題が発生しています。魔法はかっこいいです()。私はtranspose t()とas.matrixを使ってデータフレームに入れるのを簡単にしました。
とにかく、内蔵の虹彩データセットを見てください。
data(iris)
私は、唯一のがく片の長さに関して、これらすべてのためにあなたの平均、SD、およびサンプルサイズを与えるrbindでデータフレームの列にすべての値を書き、そして最後に行に名前を付けるつもりですrownames()。
はちょうどこの操作を行います。
mean_sepal_length = t(as.matrix(tapply(iris$Sepal.Length, iris$Species, mean)))
mean_sepal_length
sd_sepal_length = t(as.matrix(tapply(iris$Sepal.Length, iris$Species, FUN = sd)))
sd_sepal_length
sample_size_sepal_length = t(as.matrix(tapply(iris$Sepal.Length, iris$Species, FUN = length)))
sample_size_sepal_length
df_sepal_length <- data.frame(mean_sepal_length)
df_sepal_length
View(df_sepal_length)
df_sepal_length = rbind(df_sepal_length, sd_sepal_length)
df_sepal_length = rbind(df_sepal_length, sample_size_sepal_length)
rownames(df_sepal_length) <- c("Mean_sepal_length", "sd_sepal_length", "size_sepal_length")
write.csv(df_sepal_length, "C:/Users/me/Documents/tapply_miracle.csv")
ありがとうございました。私は各種のすべてのデータを別々に得ることができますが、同じデータマトリックス(.csvファイル)に複数の種のデータを必要とする場合は、個々の種にマトリックスを切り詰めるのではなく、データ行列は別々に実行されます。そのためのスクリプトはありますか? –
私は一日で戻った私の答えを考えていた、と私はtapply機能はINDEX変数を受け入れることができますことに気づいたとき、それは改善の余地があると思いましたリストとして。私の例では、tapplyは1つの要素を分類できることを認識していましたが、複数の要素を指定できます。トリックは)関数は、(溶融使用して、それをより読みやすくなり、長い形式に広いから、虹彩データフレームを溶融し、リストの引数でtapplyすることです:
> install.packages("reshape2")
> library(reshape2)
# I used melt to restyle the iris dataframe from wide to long turning the many columns into rows with less columns, and I coerced the iris dataset back to a dataframe.
> iris_melt <- data.frame(melt(data = iris, id = "Species", variable.name = "iris_factors", value.name = "iris_dimensions_cm"))
> head(iris_melt)
Species iris_factors iris_dimensions_cm
1 setosa Sepal.Length 5.1
2 setosa Sepal.Length 4.9
3 setosa Sepal.Length 4.7
4 setosa Sepal.Length 4.6
5 setosa Sepal.Length 5.0
6 setosa Sepal.Length 5.4
ここでは、すべての平均の花の大きさを取得します虹彩の要因:葉の長さ、葉の幅、花弁の長さ、&すべての種(setosa、virginica、versicolor)にわたる花弁の幅。
> tapply(X = iris_melt$iris_dimensions_cm, INDEX = list(iris_melt$iris_factors, iris_melt$Species), FUN = mean)
setosa versicolor virginica
Sepal.Length 5.006 5.936 6.588
Sepal.Width 3.428 2.770 2.974
Petal.Length 1.462 4.260 5.552
Petal.Width 0.246 1.326 2.026
行き方:私たちはインデックス付きリストに要素の順序を変更する場合は
> tapply(X = iris_melt$iris_dimensions_cm, INDEX = list(iris_melt$Species, iris_melt$iris_factors), FUN = mean)
Sepal.Length Sepal.Width Petal.Length Petal.Width
setosa 5.006 3.428 1.462 0.246
versicolor 5.936 2.770 4.260 1.326
virginica 6.588 2.974 5.552 2.026
、我々は、行と列を反転させることで、わずかに差形式で私たちに提示同じ情報を得ることができます標準偏差は簡単です。 FUN引数を変更するだけです:
> tapply(X = iris_melt$iris_dimensions_cm, INDEX = list(iris_melt$iris_factors, iris_melt$Species), FUN = sd)
setosa versicolor virginica
Sepal.Length 0.3524897 0.5161711 0.6358796
Sepal.Width 0.3790644 0.3137983 0.3224966
Petal.Length 0.1736640 0.4699110 0.5518947
Petal.Width 0.1053856 0.1977527 0.2746501
これで基本的にRbindを使う必要はありません。
- 1. Rのddply行要約統計
- 2. テンソルフローの要約統計量を累計する方法
- 3. ggplot2の要約統計量をプロットする
- 4. ファクタ内のファクタの要約rでの統計分析
- 5. 2つの要因boxplotに要約統計量を追加する
- 6. 別の変数でグループ化された変数の要約統計量
- 7. パンダ要約統計上のGROUPBYソート
- 8. 要約統計情報のタイムセーバー
- 9. Rテーブル出力を持つスタルマジャーまたは "特別な"要約統計情報
- 10. R統計的プログラミング
- 11. ヒートマップスケールon R統計
- 12. 大量のJavaベースのAPIサービス要求のログ統計
- 13. rの説明統計
- 14. 統計モデルの評価R
- 15. 統計量図のアイデアを調べる
- 16. Pythonのi番目の統計量
- 17. かわし位置箱ひげ図に要約統計量(あるいは生データポイント)を追加する
- 18. Pandas GroupbyとOrderbyのランクと要約統計情報
- 19. パンダファジィグループ概要統計
- 20. R統計量の代わりに0とNAの数を返す行列の概要
- 21. esttabに行を追加する方法要約統計表を集計する
- 22. 差分単変量検定の統計量差
- 23. awkを使用して統計量を計算します
- 24. rでデータフレームを要約
- 25. R H2O - 詳細な要約
- 26. 記述統計情報グループ化 - R
- 27. R - cbindリストの要約要素
- 28. レポートの要約の合計
- 29. R - 要約(データ)と要約(データ$変数)の不一致
- 30. Verticaのデータから要約と基本統計を検索する
ようこそStackOverflow! [質問する方法](http://stackoverflow.com/help/how-to-ask)を読み、[再現可能な例を作る方法]をチェックしてください(http://stackoverflow.com/questions/ 5963269/how-to-make-a-great-r-reproducible-example)を参照してください。次に、あなたの質問を編集して戻って、試したことを示すための例といくつかのコードと、あなたの質問を明確にするのに役立つ何かを追加することができます。 – Jota