LoginSignup
0
1

More than 1 year has passed since last update.

【R】基本統計量を求める

Last updated at Posted at 2019-01-27

データの分布状況を知るための、「基本統計量」を求める方法です。
この程度の処理であればExcelを使っても求められますが、こういった基本的な処理からRに慣れておくのが良いかもしれません。

解析に使うデータ

  • 以下のデータは、ある山の東側(east)と西側(west)で測定した葉のサイズ(mm^2)です。
leaf_size.csv
east,west
4632.4,4159.1
3481,3844.4
3267.8,3135.0
3130.9,2837.2
3108,2801.2
2575.4,2587.8
4556.9,5180.1
4343.5,3635.9
4130.3,2651.1
2824,2642.7

データの読み込み

Rのコンソール
> # leaf_size.csvを読み込んで、"leaf_size"という名前のデータフレームに格納する。
> leaf_size <- read.table("C:\\leaf_size.csv", header=TRUE, encoding="CP932", sep=",")
> leaf_size
     east   west
1  4632.4 4159.1
2  3481.0 3844.4
3  3267.8 3135.0
4  3130.9 2837.2
5  3108.0 2801.2
6  2575.4 2587.8
7  4556.9 5180.1
8  4343.5 3635.9
9  4130.3 2651.1
10 2824.0 2642.7

基本統計量を求める

  • 以下で使用している関数に対して、データフレームを丸ごと投げることはできません。
  • そのため、eastとwestの各列に対してmean関数を実行しています。
    • east列:leaf_size$east
    • west列:leaf_size$west

最小値、最大値、中央値

Rのコンソール
> # 最小値
> min(leaf_size$east)
[1] 2575.4
> min(leaf_size$west)
[1] 2587.8
> # 最大値
> max(leaf_size$east)
[1] 4632.4
> max(leaf_size$west)
[1] 5180.1
> # 中央値
> median(leaf_size$east)
[1] 3374.4
> median(leaf_size$west)
[1] 2986.1

平均値、標準偏差、不偏分散

Rのコンソール
> # 平均値
> mean(leaf_size$east)
[1] 3605.02
> mean(leaf_size$west)
[1] 3347.45
> # 標準偏差
> sd(leaf_size$east)
[1] 749.3615
> sd(leaf_size$west)
[1] 850.4945
> # 分散
> var(leaf_size$east)
[1] 561542.6
> var(leaf_size$west)
[1] 723340.8

複数の列の基本統計量を求める

  • sapply関数を使うことで、複数の列の基本統計量を求めることができます。
  • sapply関数は第一引数にデータフレームそのものを指定できるだけでなく、「leaf_size[1:2]」のように基本統計量を求めたい列を指定することも可能です。
Rのコンソール
> sapply(leaf_size, mean)
   east    west 
3605.02 3347.45 
> sapply(leaf_size, sd)
    east     west 
749.3615 850.4945 
> sapply(leaf_size, var)
    east     west 
561542.6 723340.8 
> sapply(leaf_size, min)
  east   west 
2575.4 2587.8 
> sapply(leaf_size, max)
  east   west 
4632.4 5180.1 
> sapply(leaf_size, median)
  east   west 
3374.4 2986.1 
0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1