• R语言学习笔记(六): 列表及数据框的访问


    List

    R语言中各组件的名称叫做标签(tags),访问列表有3种方法:

    • j$salary 通过标签名字访问,只要不引起歧义,可以只写出前几个字母。
    • j[['sal']] 夹在两个中括号时引号里的标签名字要写全。
    • j[[2]] 亦可以通过在列表中的位置访问。

    这三种方法得到的都是对应组件内容的类型。
    如果只加一个中括号,得到的是组件,类型为向量。

    • 需要注意的是 [ ] 可以提取多个组件,但 [[ ]] 一次只能提取列表的一个组件内容。
    > j <- list(name = 'Joe', salary = 5500, union = T)
    > j$salary
    [1] 5500
    > j$sal
    [1] 5500
    > j[['sal']]
    NULL
    > j[['salary']]
    [1] 5500
    > j[[2]]
    [1] 5500
    > j[2]
    $salary
    [1] 5500
    
    > j[1:2]
    $name
    [1] "Joe"
    
    $salary
    [1] 5500
    
    > j[[1:2]]
    Error in j[[1:2]] : subscript out of bounds
    

    Dataframe

    数据框的访问的用法与列表相似,可以把数据框看作由多个长度相同的列表组成的,所以访问方法同样适用。

    > d
      kids ages
    1 Jack   12
    2 Jill   10
    > d$ki
    [1] "Jack" "Jill"
    > d$kids
    [1] "Jack" "Jill"
    > d[['kid']]
    NULL
    > d[['kids']]
    [1] "Jack" "Jill"
    > d[[1]]
    [1] "Jack" "Jill"
    > d[1]
      kids
    1 Jack
    2 Jill
    > d[,1]
    [1] "Jack" "Jill"
    
    • 注意 [[ ]] 虽然只能提取一个列表的内容,但是 [[2: 3]] 表示取第二个列表中第三个元素。
      (可以把它看作先取第一层,再取第二层。)
    > d[[1:2]]
    [1] "Jill"
    > d[[2:1]]
    [1] 12
    
  • 相关阅读:
    第五次作业
    第四次作业
    第三次作业
    第二次作业
    2013551822第一次作业
    第八次作业
    第七次作业
    第六次作业
    第五次作业
    第四次作业
  • 原文地址:https://www.cnblogs.com/xihehe/p/7479185.html
Copyright © 2020-2023  润新知