R語言實戰—02-創建數據集

2.1 數據集的概念

數據集通常是用數據構成的一個矩形數組,行表示觀測(observation),列表示變數(variable)。

存儲數據的結構:包括標量、向量、數組、數據框和列表。

R處理的數據類型包括:數值型、字元型、邏輯性(TRUE/FALSE)、複數型(虛數)和

原生型(位元組)。

2.2 數據結構

存儲數據的對象類型,包括標量、向量、矩陣、數組、數據框和列表。

2.2.1 向量

向量是用於存儲數值型、字元型或邏輯型數據的一維數組。函數為:c( )

註:標量是只含一個元素的向量。

[ ]:通過給定元素所處位置的數值。

[x:x]:用於生成一個數值序列。

例:

> a <- c("k", "j", "h", "a", "c", "m")> a[3][1] "h"> a[c(1, 3, 5)][1] "k" "h" "c"> a[2:6][1] "j" "h" "a" "c" "m"

2.2.2 矩陣

矩陣:是一個二位數組,每個元素擁有相同的模式。通過函數matrix( )創建。

一般格式:

myymatrix <- 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)。
  • x[i,]指矩陣X中的第行;x[,j]指第j行,x[i,j]指第i行第j個元素。

2.2.3 數組

數據(array),與矩陣類似,維度可以大於2。

一般格式如下:

myarray <- array(vector, dimensions, dimnames)

  • vector包含數組中數據。
  • dimensions數值型向量,給出各個維度下標的最大值。
  • dimnames是可選的、各維度名稱標籤的列表。

2.2.4 數據框

使用函數為:data.frame( )

mydata <- data.frame(col1, col2, col3,...)

  • coll可為任何類型。
  • $表示選取一個給定數據框中的某個特定變數。
  • attach( )可將數據框添加到R的搜索路徑中。
  • detach( )將數據框從搜索路徑中移除。
  • with( )賦值僅在此函數的括弧內生效。
  • <<- 特殊賦值符。
  • row.name實例標識符選項指定不同的個體。

2.2.5 因子

變數歸結為:名義型、有序型或連續型變數。

  • 名義型變數:沒有順序之分的類別變數。
  • 有序型變數:表示一種順序關係。
  • 連續型變數:表示順序和數量。

類別(名義型)變數和有序類別(有序型)變數在R中稱為因子(factor)。

factor( ):以整數向量的形式存儲類別值。

有序型變數:factor( ),參數ordered=TRUE。

levels=:排序

2.2.6 列表

列表(list)就是一些對象(成分,component)的有序集合。允許整合若干對象到單個對象名下。

格式如下:

mylist <- list(object1, object2, ...)

mylist <- list(name1=object1, name2=object2, ...) 以對象命名

2.3 數據的輸入

R可從下面的文件中導入數據。

2.3.1 使用鍵盤輸入數據

兩種方式:R內置的文本編輯器、直接在代碼嵌入數據。

使用函數edit( )自動調用一個允許手動輸入的文本編輯器。

2.3.2 從帶分隔符的文本文件導入數據

使用read.table( )函數,格式如下:

mydataframe <- read.table(file, options)

  • file:帶分隔符的ASCII文本文件。
  • options:控制如何處理數據的選項。

2.3.3 導入Excel數據

格式如下:

read.xlsx(file,n)

  • file是Excel工作薄的所在路徑;
  • n則為要導入的工作表序號。

2.3.4 導入XML數據

2.3.5 從網友抓取數據

文字可以使用函數readLines( ),然後使用如grep( )和gsub( )函數來處理。

更多信息和示例,參考網站:Rrogramming with R(R Programming Language | ProgrammingR)

2.3.6 導入SPSS數據

通過foreign包中的函數read.spss( )導入或者

Hmisc包中的spss.get( )函數。

2.3.7 導入SAS數據

2.4數據集的標註

2.4.1變數標籤:將變數標籤作為變數名,然後通過位置下標來訪問這個變數。

2.4.2 值標籤:函數factor( )可為類別變數創建值標籤。

2017年03月10日

作者:壹亮3278(微信號:yiliang3278),移動互聯網產品設計、產品經理,數據分析的學習者。不斷自我迭代,自我升級,希望和知識愛好者共同進步,讓我們用成長去遇見美好的未來!!!

————
「自律是成功的基石。」————

----------------------------------------------------------------------------------------------------------

《數據分析學習之路系列》系列

大數據之數據分析精進之路:起跑

大數據之數據分析精進之路:起跑 - 知乎專欄

00-R語言的認識、下載和安裝 - 知乎專欄

01-R語言入門 - 知乎專欄

推薦閱讀:

如何隨機地決定R程序的運行先後順序?
R語言分析告訴你應避開哪個國家以躲避空難
R語言分析上海日料店價格和評價之前的聯繫
用R語言處理Excel數據
《R語言實戰》第四關(第五章)學習筆記及實踐

TAG:R | R編程語言 | 數據分析 |