データの例
data.csv
35.724441,139.684798,1967,0
35.759832,139.872587,1953,0
35.591300,139.730151,1960,0
35.746172,139.433474,1955,0
35.762438,139.773832,1968,0
35.713675,139.422742,2001,0
35.689125,139.540064,2000,0
35.586835,139.427465,1954,0
このCSVにはヘッダーが無いので header=F にして、ラベルをつけてもらう.
data <- read.csv('data.csv', header=F, sep=",")
summary(data)
V1 V2 V3 V4
Min. :35.51 Min. :139.4 Min. :1950 Min. :0
1st Qu.:35.64 1st Qu.:139.5 1st Qu.:1965 1st Qu.:0
Median :35.69 Median :139.7 Median :1983 Median :0
Mean :35.68 Mean :139.6 Mean :1982 Mean :0
3rd Qu.:35.74 3rd Qu.:139.8 3rd Qu.:1999 3rd Qu.:0
Max. :35.81 Max. :139.9 Max. :2014 Max. :0
hist(data[2])
以下にエラー hist.default(data[2]) : 'x' は数値でなければなりません
クラスと確認せよとのこと.
sapply(data, class)
V1 V2 V3 V4
"numeric" "numeric" "integer" "integer"
よさそう。
そもそも値のアクセスの仕方が違ったみたい. histにはベクトルを渡す必要がある
$で値にアクセスする
data$V3
[1] 1953 1960 1955 1968 2001 2000 1954 1991 1974 1952 1996 1985 1975 1952 2011
[16] 1975 1960 1969 1951 1995 1958 1973 1974 2009 2005 2008 1956 1971 1962 1974
または、このようなアクセスも可能
data[['V3']]
[1] 1953 1960 1955 1968 2001 2000 1954 1991 1974 1952 1996 1985 1975 1952 2011
[16] 1975 1960 1969 1951 1995 1958 1973 1974 2009 2005 2008 1956 1971 1962 1974
これだと配列が戻ってきている
data[3]
X1967
1 1953
2 1960
3 1955
4 1968
5 2001
よって以下のように値を渡せばよい
hist(data$V3)
刻みを細かく、色をつける場合は
hist(data$V3, breaks=65, col="blue")