本書(shū)作者: 吳喜之
鑒于吳教授的建議嫂用,在閱讀本書(shū)后續(xù)章節(jié)之前,我們先對(duì)附錄中的R相關(guān)操作進(jìn)行練習(xí)丈冬。
操作系統(tǒng):win10
R版本:R-3.3.3
這部分內(nèi)容使用Rmarkdown進(jìn)行記錄嘱函。如果做練習(xí),可以直接在R中運(yùn)行每一個(gè)命令
強(qiáng)烈建議初學(xué)者自己去運(yùn)行每一個(gè)命令埂蕊,理解其中的具體含義往弓。
實(shí)踐1 —— 熱身
x = 1:100 #將1-100賦值到x,但是不顯示
(a = 1:100) #同樣將1-100賦值到a蓄氧,但是將直接顯示a的結(jié)果
sample(x, 20) #從x中隨機(jī)不放回地抽取20個(gè)值作為樣本函似,將直接顯示結(jié)果
set.seed(011); sample(1:10, 3) #先設(shè)定種子,再隨機(jī)取值喉童。注意撇寞,設(shè)定種子的目的是保證模擬結(jié)果的可重復(fù)性,011可認(rèn)為是零一一號(hào)種子
z = sample(1:200000, 10000) #不放回地抽取10000個(gè)值作為樣本
z[5:15] #提取z中5-15位的數(shù)值
y = c(5, 7, 12, 8, 5, 10)
z[y] #提取以y為下標(biāo)的z的元素值
(z = sample(x, 100, rep=T)) #從x中有放回地隨機(jī)抽取100個(gè)值作為樣本
(z1 = unique(z)) #去重后將結(jié)果保存至z1
length(z1) #統(tǒng)計(jì)z1中的元素個(gè)數(shù)堂氯,即z中不同的元素個(gè)數(shù)
a = 1:10
b = 5:15
setdiff(a, b) #從a中去除與b重合的元素蔑担,即保留a特異的元素
setdiff(b, a) #從b中去除與a重合的元素(注意與上一個(gè)命令進(jìn)行區(qū)分)
sort(union(a, b)) #將a與b的元素合并后排序,注意會(huì)去重
setequal(union(a, b), b) #判斷a與b合并后的元素是否與b相同咽白,注意會(huì)去重
intersect(1:10, 7:20) #取兩個(gè)集合的交集
sample(1:100, 20, prob=1:100) #從1-100中不等概率地隨機(jī)抽樣钟沛,prob限定每個(gè)數(shù)值被抽到的概率,需與元素個(gè)數(shù)相同局扶。[看出來(lái)了吧恨统,電腦抽獎(jiǎng)也可以造假]
實(shí)踐2 —— 簡(jiǎn)單運(yùn)算
pi * 10^2 #pi為圓周率
?“*” #聯(lián)網(wǎng)查看基本算術(shù)運(yùn)算方法
"*"(pi, "^"(10, 2)) #這是一種類(lèi)似“密碼”的寫(xiě)法三妈,你可以了解一下畜埋,萬(wàn)一想寫(xiě)個(gè)暗語(yǔ)什么的可以考慮~
x = pi * 10 ^ 2
x
print (x)
(x = pi * 10 ^ 2) #賦值同時(shí)打印
pi ^ (1:5) #指數(shù)可以是向量,結(jié)果也將是向量
print(x, digits = 12) #輸出x的12位數(shù)字
實(shí)踐3 —— 關(guān)于R對(duì)象的類(lèi)型
x = pi * 10 ^ 2
class(x)
mode(x)
typeof(x)
class(cars) #cars為R自帶的數(shù)據(jù)
mode(cars)
typeof(cars)
#modes have the same set of names as types except that:
#types "integer" and "double" are returned as "numeric"
#types "special" and "builtin" are returned as "function"
#types "symbol" is called mode "name"
#types "language" is returned as "(" or "call"
#分類(lèi)似乎是個(gè)很復(fù)雜的事情畴蒲,有興趣深入研究可以參考 <https://stackoverflow.com/questions/8855589/a-comprehensive-survey-of-the-types-of-things-in-r-mode-and-class-and-type>
names(cars) #顯示cars中的變量名
summary(cars) #對(duì)cars進(jìn)行基本統(tǒng)計(jì)分析
cars[1:6, ] #顯示前6行數(shù)據(jù)
head(cars) #顯示頭幾行數(shù)據(jù)悠鞍,默認(rèn)為前6行,結(jié)果同上
tail(cars) #顯示最后幾行數(shù)據(jù)
str(cars) #換一種方式展示數(shù)據(jù)
row.names(cars) #顯示數(shù)據(jù)的行名
attributes(cars) #顯示數(shù)據(jù)基本信息
class(dist~speed) #類(lèi)型為公式,左側(cè)為因變量咖祭,右側(cè)為自變量
plot(dist~speed, cars) #繪制兩個(gè)變量的散點(diǎn)圖
plot(cars$speed, cars$dist) #x軸數(shù)據(jù)在左掩宜,y軸數(shù)據(jù)在右,注意坐標(biāo)軸的title與上圖有一些區(qū)別
后續(xù)操作更為復(fù)雜么翰,從易到難牺汤,咱們慢慢來(lái)。