R語言學(xué)習(xí)1

一、學(xué)習(xí)筆記

1.向量

向量是用于存儲數(shù)值型、字符型或邏輯型數(shù)據(jù)的一維數(shù)組。執(zhí)行組合功能的函數(shù) c() 可用來創(chuàng)建向量。例如:a <- c(1, 2, 5, 3, 6, -2, 4)

向量

其中,a[c(2,4,6)]是指在向量a中第2,4,6個數(shù)值。

2.矩陣

矩陣是一個二維數(shù)組,只是每個元素都擁有相同的模式(數(shù)值型、字符型或邏輯型)??赏ㄟ^函數(shù) matrix() 創(chuàng)建矩陣。
一般使用格式為:
mymatrix <-matrix(vector,nrow=number_of_rows,ncol=number_of_columns,byrow=logical_value,dimnames=list(char_vector_rownames, char_vector_colnames))
其中 vector 包含了矩陣的元素, nrow 和 ncol 用以指定行和列的維數(shù), dimnames 包含了可選的、以字符型向量表示的行名和列名。選項 byrow 則表明矩陣應(yīng)當(dāng)按行填充(byrow=TRUE),還是按列填充( byrow=FALSE ),默認(rèn)情況下按列填充。

矩陣

這是將矩陣元素按行填充。

矩陣

在這里,是按列填充。

X[i,] 指矩陣 X 中的第i行, X[,j]指第j列, X[i, j] 指第i行第j 個元素。

矩陣
3.數(shù)組

數(shù)組(array)與矩陣類似,但是維度可以大于2。數(shù)組可通過 array 函數(shù)創(chuàng)建,形式如下:myarray <- array(vector, dimensions, dimnames)
其中 vector 包含了數(shù)組中的數(shù)據(jù), dimensions 是一個數(shù)值型向量,給出了各個維度下標(biāo)的最大值,而 dimnames 是可選的、各維度名稱標(biāo)簽的列表。

數(shù)組

從數(shù)組中選取元素的方式與矩陣相同。

數(shù)組

所以,z[1,2,4]對應(yīng)的數(shù)值為21。

4.數(shù)據(jù)框

數(shù)據(jù)框可通過函數(shù) data.frame() 創(chuàng)建:mydata <- data.frame(col1, col2, col3,...),其中的列向量 col1 、 col2 、 col3 等可為任何類型(如字符型、數(shù)值型或邏輯型)。每一列的名稱可由函數(shù) names 指定。

數(shù)據(jù)框

可以使用前述(如矩陣中的)下標(biāo)記號,亦可直接指定列名。

數(shù)據(jù)框

patientdata[1:2]是指數(shù)據(jù)框中的第一、二列,也就是用下標(biāo)記號指出需要的列。“diabetes”和“status”是列名,通過列名篩選所需的列。第三種方式是用“$”完成,它被用來選取一個給定數(shù)據(jù)框中的某個特定變量。

5.因子

函數(shù) factor() 以一個整數(shù)向量的形式存儲類別值,整數(shù)的取值范圍是[1...k](其中k是名義型變量中唯一值的個數(shù)),同時一個由字符串(原始值)組成的內(nèi)部向量將映射到這些整數(shù)上。要表示有序型變量,需要為函數(shù) factor() 指定參數(shù) ordered=TRUE 。
數(shù)值型變量可以用 levels 和 labels 參數(shù)來編碼成因子。如果男性被編碼成1,女性被編碼成2,則以下語句:sex <- factor(sex, levels=c(1, 2), labels=c("Male", "Female"))

因子
6.列表

可以使用函數(shù) list() 創(chuàng)建列表:mylist <- list(object1, object2, ...),其中的對象可以是目前為止講到的任何結(jié)構(gòu)。你還可以為列表中的對象命名:mylist <- list(name1=object1, name2=object2, ...)。

列表

以上都是看書操作練習(xí)的代碼,中間出了幾次錯誤,一個字一個字的對照英文拼音看是否有錯,還出現(xiàn)了標(biāo)點符號沒有用英文符號的錯誤。

7.數(shù)據(jù)輸入

(1)鍵盤輸入

鍵盤輸入

適合小數(shù)據(jù)的錄入。

(2)數(shù)據(jù)導(dǎo)入

接下來是操作數(shù)據(jù)導(dǎo)入,這里嘗試了一晚上都沒能把“csv"文件導(dǎo)入,后來去谷歌搜索,看了視頻操作以后,才明白自己哪里出錯了。

數(shù)據(jù)導(dǎo)入

操作到這里之后,我就開始看猴子老師的LIVE第二講《數(shù)據(jù)結(jié)構(gòu)入門》
然后就開始跟著猴子老師的操作用Rstudio練習(xí)操作代碼。不過,第一時間還是用Rstudio學(xué)習(xí)csv、xlsx文件,發(fā)現(xiàn)比在R中操作要方便很多。

數(shù)據(jù)導(dǎo)入

接著就是邊聽課,邊練習(xí):

練習(xí)
練習(xí)2

在練習(xí)的過程,還是會犯一些英文輸入錯誤、標(biāo)點符號沒有注意錄入英文字符。

總結(jié):

1.先看書,再操作練習(xí)。

2.寫腳本,方便修改代碼。

3.先自學(xué)看書后,再聽課,聽課過程同步練習(xí)。

二、實戰(zhàn)作業(yè)

作業(yè)要求:根據(jù)”病例數(shù)據(jù)“,用合適的數(shù)據(jù)結(jié)構(gòu)進(jìn)行數(shù)據(jù)存儲,以及進(jìn)行簡單的分析。

結(jié)果:創(chuàng)建數(shù)據(jù)框存儲病人信息,錄入新病人數(shù)據(jù)和添加性別一列,同時計算病人總?cè)藬?shù)、1型糖尿病人總數(shù)。

實戰(zhàn)1
實戰(zhàn)2

新增了兩個新病人的信息,同時錄入了每個病人的性別,得出總病人數(shù)是6人,1型糖尿病有3人。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容