加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

R语言中如何合并不等长的数组

(2012-06-20 15:49:58)
标签:

r语言

数组合并

不等长

杂谈

分类: R

R language中合并数组常用命令为rbind() or cbind(),但是要求数组必须是等长的,否则不能合并成matrix

如果想要把长度不同的数组合并,较短的数组用NA补齐,该如何处理呢,参考下面命令:

 

a = 1:10

b = 1:5

a1 = data.frame(t(a))
list[[1]] = data.frame(a)

b1 = data.frame(t(b))
list[[2]] = data.frame(b)
mat = do.call(rbind.fill, list)

 or

mat = rbind.fill(list1)

 

思路就是把要合并的array先存储到list中,注意存储结构必须为frame且是1行n列,frame的每列必须有对应的name,因为rbind.fill是按照相同的name合并的。(上面的程序自动生成了name)

 

有更简洁的方法 欢迎讨论

 

 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有