Data.frame

  • 数据框是R的一种数据结构。它通常是矩阵形式的数据,但矩阵各列可以是不同类型的
  • 数据框是一种特殊的列表对象。各列表成员必须是向量(数值型、字符型、逻辑型)、因子、数值型矩阵、列表,或其它数据框。向量、因子成员为数据框提供一个变量,如果向量非数值型则会被强制转换为因子,而矩阵、列表、数据框这样的成员为新数据框提供了和其列数、成员数、变量数相同个数的变量。作为数据框变量的向量、因子或矩阵必须具有相同的长度(行数)
> d=data.frame( name=c("赵",  "钱",  "孙",  "李",  "王"),                        
                             age=c(20,21,22,21,20), 
                             height=c(170,171,175,165,181),  
                             gender=c("男", "女", "男", "女", "男" ))
   > d 
    name age height gender
 1   赵  20    170     男
 2   钱  21    171     女
 3   孙  22    175     男
 4   李  21    165     女
 5   王  20    181     男

> d[1]
   name
 1   赵
 2   钱
 3   孙
 4   李
 5   王

> d[[1]] 
 [1] 赵 钱 孙 李 王
 Levels: 李 钱 孙 王 赵
# 可见,d里的非数值向量已经变成因子了

> d[[2]][2:3]
 [1] 21 22

数据框引用

  • 数据框的各变量也可以用按列表引用(即用双括号[[]] 或$符号引用, 和列表的引用方法一致)。
  • 引用数据框元素的方法与引用矩阵元素的方法相同,可以使用下标或下标向量,也可以使用名字或名字向量。
  • names():数据框的变量名(列的名字)由属性names定义。
  • rownames() 数据框的各行也可以定义名字,可以用rownames属性定义

attach

> attach(d)
> r <- height / age
> d$r <- height / age  
> d
> # 为了取消连接,只要调用detach()(无参数即可

猜你喜欢

转载自blog.csdn.net/qq_38265735/article/details/83117922