R语言--list

  1. list和vector不同,后者存储的数据为同一种mode,list能够存储不一样mode的数据,一个list就像是一个json,一个包涵不少键值对的数据结构
  2. list的建立方式
    1) 带tag的方式:j<-list(name=”Joe”,salary=55000,union=T)
    2) 无tag的方式:j<-list(“Joe”,55000,T)
    3) vector的mode参数:z<-vector(mode=”list”),以后能够向z赋值
  3. list中元素的访问:
    1) list_name$tag_name
    2) list_name[[tag_name]]
    3) list_name[[index]]
    注意,list中元素的访问须要双层[[]],若是单层[index]或[tag_name]会访问到tag_name(或者index)与值自己,是个子list,而不单单是值;并且,双层[[]]中的只能是单一的tag_name或index,不能是相似[[1:3]]这样访问,而单层能够[1:3],提取出1~3做为子list
  4. 不像vector在建立以后就没法增长、删除元素,list中的元素是能够动态增减的
  5. lapply()——list apply,接受两个参数,前者为list(若是是vector会自动转为list),第二个是方法。返回结果为list;sapply()——simplified apply
  6. list中能够嵌套list
  7. c()方法有个recursive参数,默认为FALSE,当设置为TRUE的时候,将返回“非”嵌套的结果(很是奇怪!)。如c(list(a=1,b=2,c=list(d=5,e=9)))乃是一个嵌套list,而c(list(a=1,b=2,c=list(d=5,e=9)),recursive=T)则是一个vector
相关文章
相关标签/搜索