An R script for IQ_Beh data set

讀取資料

dta <- read.table("IQ_Beh.txt", header = T, row.names = 1)

查看資料結構

str(dta)
## 'data.frame':    94 obs. of  3 variables:
##  $ Dep: Factor w/ 2 levels "D","N": 2 2 2 2 1 2 2 2 2 2 ...
##  $ IQ : int  103 124 124 104 96 92 124 99 92 116 ...
##  $ BP : int  4 12 9 3 3 3 6 4 3 9 ...

列出前六比資料

head(dta)

資料類別

class(dta)
## [1] "data.frame"

資料維度(row x column)

dim(dta)
## [1] 94  3

column 的名字

names(dta)
## [1] "Dep" "IQ"  "BP"

檢查資料的 BP 行是否為vector格式

is.vector(dta$BP)
## [1] TRUE

列出資料第一行

dta[1, ]

列出資料前三行IQ的資料

dta[1:3, "IQ"]
## [1] 103 124 124

列出最後六筆經過排序(以BP大小排)的資料

tail(dta[order(dta$BP), ])

列出最後四筆經過排序(以負BP大小排)的資料

tail(dta[order(-dta$BP), ], 4)

以IQ值畫直方圖

with(dta, hist(IQ, xlab = "IQ", main = ""))

以Dep為分類畫出BP的盒鬚圖

boxplot(BP ~ Dep, data = dta, 
        xlab = "Depression", 
        ylab = "Behavior problem score")

以Dep為顏色區別畫出IQ&BP的點圖

plot(IQ ~ BP, data = dta, pch = 20, col = dta$Dep, 
     xlab = "Behavior problem score", ylab = "IQ")
grid()

以Dep為文字區別畫出IQ&BP的點圖,實線為Dep == “D”的回歸線,虛線為Dep == “N”的回歸線

plot(BP ~ IQ, data = dta, type = "n",
     ylab = "Behavior problem score", xlab = "IQ")
text(dta$IQ, dta$BP, labels = dta$Dep, cex = 0.5)
abline(lm(BP ~ IQ, data = dta, subset = Dep == "D"))
abline(lm(BP ~ IQ, data = dta, subset = Dep == "N"), lty = 2)

end