⑴ R語言自學筆記-2內置數據集
#b站視頻——R語言入門與數據分析
#內置數據集
#固定格式的數據(矩陣、數據框或一個時間序列等)
#統計建模、回歸分析等試驗需要找合適的數據集
#R內置數據集,存儲在,通過
help(package="datasets")
#通過data函數訪問這些數據集
data()
#得到新窗口 前面:數據集名字 後面:內容
#包含R所有用到的數據類型,包括:向量、矩陣、列表、因子、數據框以及時間序列等
#直接輸入數據集的名字就可以直接使用這些數據集
#輸出一個向量
rivers
#是北美141條河流長度
#這些數據集的名字都是內置的,一般我們在給變數命名時最好不要重復
#否則數據集在當前對話中會被置換掉
#例如
rivers<-c(1,2,3)
rivers
#不過影響不大
#再使用data函數重新載入這個數據集就可以了
data("rivers")
rivers
#一些常用內置數據集
#默認介紹頁面只有名字和介紹,並沒有給出數據分類
#哪些是向量、矩陣、數據框等?
#查看數據集除了直接敲數據集名字顯示數據之外
#還可以使用help函數查看每個數據集具體的內容
help("mtcars")
euro
#歐元匯率,長度為11,每個元素都有命名
#輸出向量的屬性信息
names(euro)
#將5個數據構成一個數據框
向量
state.abb #美國50個州的雙字母縮寫
state.area #美國50個州的面積
state.name #美國50個州的全稱
因子
state.division #美國50個州的分類,9個類別
state.region #美國50個州的地理分類
#
state<-data.frame(state.name,state.abb,state.area,state.division,state.region)
state
state.x77 #美國50個州的八個指標
state.x77
VADeaths #1940年弗吉尼亞州死亡率(每千人)
volcano #某火山區的地理信息(10米×10米的網格)
WorldPhones #8個區域在7個年份的電話總數
iris3 #3種鳶尾花形態數據
#以上矩陣→適合畫熱圖
heatmap(volcano)
#這里只是作為一個演示,還需要對這個圖進行一些調整
#更復雜的數據結構
Titanic #泰坦尼克乘員統計,是一個數組
UCBAdmissions #伯克利分校1973年院系、錄取和性別的頻數
crimtab #3000個男性罪犯左手中指長度和身高關系
HairEyeColor #592人頭發顏色、眼睛顏色和性別的頻數
occupationalStatus #英國男性父子職業聯系
#類矩陣
eurodist #歐洲12個城市的距離矩陣,只有下三角部分
Harman23.cor #305個女孩八個形態指標的相關系數矩陣
Harman74.cor #145個兒童24個心理指標的相關系數矩陣
#R中內置最多的數據集——數據框
cars #1920年代汽車速度對剎車距離的影響
iris #3種鳶尾花形態數據
mtcars #32輛汽車在11個指標上的數據
rock #48塊石頭的形態數據
sleep #兩葯物的催眠效果
swiss #瑞士生育率和社會經濟指標
trees #樹木形態指標
USArrests #美國50個州的四個犯罪率指標
women #15名女性的身高和體重
#列表
state.center #美國50個州中心的經度和緯度
#類數據框
Orange #桔子樹生長數據
#時間序列數據,和數據框類似,不同的是具有時間序列的順序,是數據分析中非常常見的格式
#能反映出變化情況以及變化的趨勢等
#因此有很多專門的方法用於時間序列的數據分析
co2 #1959-1997年每月大氣co2濃度(ppm)
presidents #1945-1974年每季度美國總統支持率
uspop #1790–1970美國每十年一次的人口總數(百萬為單位)
#除了內置數據集之外,許多R擴展包中也內置了很多數據集
#這些數據集作為擴展包的函數使用的案例
#載入R包之後這些數據集也同樣被載入進來
#例如MASS包中的Cars93數據
#包含了27個變數,是1993年93輛汽車的型號指標
install.packages("MASS")
library("MASS")
help("Cars93")
#使用data函數在參數package中等於對應R包的名字,即可列出每個R包中包含的數據集
#ex
data(package="MASS")
#顯示R中所有可用的數據集
data(package=.packages(all.available = TRUE))
#不載入R包使用其中的數據集
data(Chile,package="car")
Chile
#> data(Chile,package="car")
#Warning message:
# In data(Chile, package = "car") : data set 『Chile』 not found
#> Chile
#Error: object 'Chile' not found
install.packages("car")
library("car")
help("Chile")
⑵ 如何用R語言中的robustrao
用R語言中的robustrao,需要使用到robust包和qcc包,先要下載好。我們使用的是robust包知道的stack.dat數據集進行分析,用R語言中的robustrao導入數據
通過斷點回歸(RD),還可以用R語言的robustrao命令詳解、設計前提條件內生分組等顯著性檢驗、全套標准動作
⑶ R語言之創建數據集
R語言之創建數據集
數據集通常是由數據構成的一個矩形數組,行表示觀測,列表示變數。
R中有許多用於存儲數據的結構,包括標量、向量、數組、數據框和列表。
在R中,對象(object)是指可以賦值給變數的任何事物,包括常量、數據結構、函數、甚至是圖形。因子(factor)是名義型變數或有序型變數,在R中被特殊地存儲和處理。
R中的數據結構:
1.1向量
向量是用於存儲數值型、字元型或邏輯型數據的一維數組。創建向量使用函數c(),如下例所示:
數值型向量:a<-c(1,2,5,3,6,-2,4)
字元型向量:b<-c("one","two","three")
邏輯型向量:c<-c(TRUE,TRUE,TRUE,FALSE,TRUE)
註:單個向量中的數據必須擁有相同的類型或模式。
標量是只含一個元素的向量,例如f<-3、g<-"US"和h<-TRUE。它們用於保存常量。
訪問向量中的元素,可在方括弧中給定元素所處位置的數值,如:a[c(2,4)]用於訪問向量a中的第二個和第四個元 素。
1.2矩陣
矩陣是一個二維數組,只是每個元素都擁有相同的模式(數值型、字元型或邏輯型),可以通過matrix創建矩陣
一般使用格式為:
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用以指定
行和列的維數,dimnames包含了可選的以字元型向量表示的行名和列名。選項byrow則表明矩陣應當按行
填充(byrow=TRUE)還是按列填充(byrow=FALSE),默認情況下按列填充。代碼演示如下:
[plain] view plain
> cells<-c(1,23,56,485)
> rnames<-c("R1","R2")
> cnames<-c("c1","c2")
[plain] view plain
<pre name="code" class="html">> mymatrix<-matrix(cells ,nrow=2,ncol=2,byrow=TRUE,dimnames=list(rnames,cnames))
> mymatrix
c1 c2
R1 1 23
R2 56 485
1.3數組
數組與矩陣類似,但是維數可以大於2。數組可通過array函數創建,形式如下:
myarray<-array(vector,dimensions,dimnames),其中vector包含了數組中的數據,dimensions是一個數值型向量,給出了各個維度下標的最大值,而dimnames是可選的、各維度名稱標簽的列表。代碼如下:
[html] view plain
> dim<-c("A1","A2")
> dim1<-c("A1","A2")
> dim2<-c("B1","B2","B3")
> dim3<-c("C1","C2","C3","C4")
> z<-array(1:24,c(2,3,4),dimnames=list(dim1,dim2,dim3))
> z
, , C1
B1 B2 B3
A1 1 3 5
A2 2 4 6
, , C2
B1 B2 B3
A1 7 9 11
A2 8 10 12
, , C3
B1 B2 B3
A1 13 15 17
A2 14 16 18
, , C4
B1 B2 B3
A1 19 21 23
A2 20 22 24
1.4數據框
數據框中不同的列可以包含不同模式(數值型、字元型等)的數據,是R中最常處理的數據結構。數據框可以通過函數data.frame()創建:mydata<-data.frame(col1,col2,col3,...),其中的列向量col1,col2,col3,...可為任何類型(如字元型、數值型或邏輯型)。每一列的名稱可由函數names指定。代碼如下:
[html] view plain
> age<-c(25,34,28,53)
> patientID<-c(1,2,3,4)
> diabetes<-c("Type1","Type2","Type1","Type1")
> status<-c("Poor","Improved","Excellent","Poor")
> patientdata<-data.frame(patientID,age,diabetes,status)
> patientdata
patientID age diabetes status
1 1 25 Type1 Poor
2 2 34 Type2 Improved
3 3 28 Type1 Excellent
4 4 53 Type1 Poor
> patientdata$age
[1] 25 34 28 53
<pre name="code" class="html">> table(patientdata$diabetes,patientdata$status)
Excellent Improved Poor
Type1 1 0 2
Type2 0 1 0
$被用來選取一個給定數據框中的某個特定變數,上面table(patientdata$diabetes,patientdata$status)生成了 diabetes和status的列聯表。
函數attach()可將數據框添加到R的搜索路徑中。
函數detach()將數據框從搜素路徑中移除。
相對於attach。多數的R書籍更推薦使用函數with()。
1.5因子
變數可歸結為名義型、有序型或連續型變數。類別(名義型)變數和有序類別(有序型)變數在R中稱為因子。因子在R中非常重要,因為它決定了數據的分析方式以及如何進行視覺呈現。
函數factor()以一個整數向量的形式存儲類別值,整數的取值范圍是[1...k](其中k是名義變數中唯一值得個數),同時一個由字元串(原始值)組成的內部向量將映射到這些整數上。
名義型eg:假設有向量:diabetes<-c("Type1","Type2","Type1","Type1")
語句diabetes<-factor(diabetes)將此向量存儲為(1,2,1,1).
有序型eg: 對於給定變數status<-c("Poor","Improved","Excellent","Poor")
語句status<-factor(status,ordered=TRUE)會將向量編碼為(3,2,1,3)。
1.6列表(list)
列表是R的數據類型中最為復雜的一種。列表就是一些對象的(或成分,component)的有序集合。列表允許你整合若干(可能無關)的對象到單個對象名下。例如,某個列表中可能是若干向量、矩陣、數據框,甚至是其他列表的組合。可以使用函數list()創建列表:
mylist<-list(object1,object2,...)
註:列表成為了R中的重要數據結構。
1.列表允許以一種簡單的方式組織和重新調用不相乾的信息;
2.許多R函數的運行結果都是以列表的形式返回的。
⑷ 如何用R語言在數據中提取指定列數據,並且形成一個新的數據表
最簡單的方法,數據框的名稱,加上你要提取的列數,示例如下:
需要注意的是,如果只提取單列的話,得到的數據就變成了一個vector,而不再是dataframe的格式了。
⑸ R自帶數據集rivers的第78個元素值
rivers指的是北美141條河流長度,第78個元素值為:350
R語言是用於統計分析、繪圖的語言和操作環境。R是屬於GNU系統的一個自由、免費、源代碼開放的軟體,它是一個用於統計計算和統計制圖的優秀工具。
R作為一種統計分析軟體,是集統計分析與圖形顯示於一體的。它可以運行於UNIX、Windows和Macintosh的操作系統上,而且嵌入了一個非常方便實用的幫助系統,相比於其他統計分析軟體,R還有以下特點:
1.R是自由軟體。這意味著它是完全免費,開放源代碼的。可以在它的網站及其鏡像中下載任何有關的安裝程序、源代碼、程序包及其源代碼、文檔資料。標準的安裝文件自身就帶有許多模塊和內嵌統計函數,安裝好後可以直接實現許多常用的統計功能。
2.R是一種可編程的語言。作為一個開放的統計編程環境,語法通俗易懂,很容易學會和掌握語言的語法。而且學會之後,我們可以編制自己的函數來擴展現有的語言。這也就是為什麼它的更新速度比一般統計軟體,如SPSS、SAS等快得多。大多數最新的統計方法和技術都可以在R中直接得到。
3.所有R的函數和數據集是保存在程序包裡面的。只有當一個包被載入時,它的內容才可以被訪問。一些常用、基本的程序包已經被收入了標准安裝文件中,隨著新的統計分析方法的出現,標准安裝文件中所包含的程序包也隨著版本的更新而不斷變化。在另外版安裝文件中,已經包含的程序包有:baseR的基礎模塊、mle極大似然估計模塊、ts時間序列分析模塊、mva多元統計分析模塊、survival生存分析模塊等等。
4.R具有很強的互動性。除了圖形輸出是在另外的窗口處,它的輸入輸出窗口都是在同一個窗口進行的,輸入語法中如果出現錯誤會馬上在窗口中得到提示,對以前輸入過的命令有記憶功能,可以隨時再現、編輯修改以滿足用戶的需要。輸出的圖形可以直接保存為JPG、BMP、PNG等圖片格式,還可以直接保存為PDF文件。另外,和其他編程語言和資料庫之間有很好的介面。
5.如果加入R的幫助郵件列表一,每天都可能會收到幾十份關於R的郵件資訊。可以和全球一流的統計計算方面的專家討論各種問題,可以說是全世界最大、最前沿的統計學家思維的聚集地。
R是基於S語言的一個GNU項目,所以也可以當作S語言的一種實現,通常用S語言編寫的代碼都可以不作修改的在R環境下運行。R的語法是來自Scheme。R的使用與S-PLUS有很多類似之處,這兩種語言有一定的兼容性。S-PLUS的使用手冊,只要稍加修改就可作為R的使用手冊。所以有人說:R,是S-PLUS的一個「克隆」。
但是請不要忘了:R是免費的(Risfree)。R語言源代碼託管在github,具體地址可以看參考資料。
R語言的下載可以通過CRAN的鏡像來查找。
R語言有域名為.cn的下載地址,有六個,其中兩個由Datagurn,由中國科學技術大學提供的。R語言Windows版,其中由兩個下載地點是Datagurn和USTC提供的。