R数据结构小结

作者: Angeladaddy | 来源:发表于2019-06-17 23:36 被阅读0次

1. 向量(vector)

  • R中最小的数据类型是向量,R没有标量类型
  • x=2,x可以看成是只具有一个数值的向量
a=c(1,2,3,4,5)
b=c(1:10)
d= 1:10
e=c(TRUE,FALSE,FALSE,TRUE)
f= letters

2. 数组(array)

array(data = NA, dim = length(data), dimnames = NULL)
as.array(x, ...)
is.array(x
  • 数组能存放多维矩形数据。
  • “矩形”是指每行的长度都相等,且每列和其他长度也是如此。
  • 使用 array 函数创建一个数组,为它们传入两个向量(值和维度)作为参数。另外, 你也可以为每个维度命名
three_d_array <- array(  1:24,  
dim = c(4, 3, 2),  
dimnames = list(    
  c("one", "two", "three", "four"),    
  c("ein", "zwei", "drei"),    
  c("un", "deux")  ) )

3. 矩阵(matrix)

matrix(data = NA, nrow = 1, ncol = 1, 
  byrow = FALSE,dimnames = NULL)

as.matrix(x, ...)
## S3 method for class 'data.frame'
as.matrix(x, rownames.force = NA, ...)
  • 矩阵是二维数组的特例(2×2 array)
  • 创建矩阵的语法非常类似,但无需传递维度 dim 参数,只要指定行数或列数即可
a_matrix <- matrix(   
  1:12,   
  nrow = 4,     #ncol = 3 也是同样的效果   
  dimnames = list(     
    c("one", "two", "three", "four"),     
    c("ein", "zwei", "drei")   
    ) 
  )

4. 列表(list)

list(...)
pairlist(...)

as.list(x, ...)
## S3 method for class 'environment'
as.list(x, all.names = FALSE, sorted = FALSE, ...)
as.pairlist(x)

is.list(x)
is.pairlist(x)

alist(...)
  • 不严格地说,列表是一个向量,但其中每个元素的类型可以不同。
a_list <- list(  
  c(1, 1, 2, 5, 14, 42),  # 第1项
  month.abb,  # 第2项
  matrix(c(3, -8, 1, -3), nrow = 2),  # 第3项
  asin # 第4项
 )

5. 数据框(dataframe)

data.frame(..., row.names = NULL, check.rows = FALSE,
           check.names = TRUE, fix.empty.names = TRUE,
           stringsAsFactors = default.stringsAsFactors())

default.stringsAsFactors()
  • 数据框用于存储类似电子表格的数据。它们既可被看作是每列可存储不同数据类型的矩阵,或是非嵌套的列表,
  • 但其中每个元素必须具有相同的长度。
a_data_frame <- data.frame(   
x = letters[1:5],  
y = rnorm(5),   
z = runif(5) > 0.5 
)

注意每项(每列)的长度都是5

相关文章

网友评论

    本文标题:R数据结构小结

    本文链接:https://www.haomeiwen.com/subject/ngutqctx.html