R语言数据类型转换 List Vector Dataframe

本文详细介绍了R语言中的数据结构,包括vector与list的区别及使用方法。解释了如何创建、访问及转换这些数据类型,并提供了实用的例子来展示它们的应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.

v = as.vector(unlist(mylist[1]))

转发 :http://blog.youkuaiyun.com/skyonefly/article/details/50923896


2. 

  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

http://blog.sina.com.cn/s/blog_aac531e001016xmy.html


3. 

test for data type
is.numeric(), is.character(), is.vector(), is.matrix(), is.data.frame()

convert it
as.numeric(), as.character(), as.vector(), as.matrix(), as.data.frame

vector/matrix/data.frame

  to one long 
vector
to
matrix
to
data frame
from
vector
c(x,y) cbind(x,y)
rbind(x,y)
data.frame(x,y)
from
matrix
as.vector(mymatrix)   as.data.frame(mymatrix)
from
data frame
  as.matrix(myframe)  

http://www.cnblogs.com/emanlee/p/3774135.html  




评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值