R版本2.11.1 Windows 7上的32位
我想知道是否有其他人遇到过这个问题。我有几个不同长度的数组,我想把它们放在一起输出。例如:
a=c(1,2,3);
b=c(2,4,1,6)
c=c(4,5,9,2,8)
ra=rank(a);#ra=1 2 3
rb=rank(b);#rb=2 3 1 4
rc=rank(c);#rc=2 3 5 1 4
然后如何把ra,rb和rc放在一起成为:
1 2 3
2 3 1 4
2 3 5 1 4
是的,list()
可能会有所帮助,但我怎么能将它保存到我的电脑上。
我尝试使用write.table()
,但失败了。
答案 0 :(得分:1)
将列表转换为字符串矩阵。
a=c(1,2,3);
b=c(2,4,1,6)
c=c(4,5,9,2,8)
rlist <- lapply(list(a,b,c), rank)
m <- do.call(rbind, lapply(rlist,
function(x) paste(x,collapse=" ")
)
)
write.table(m,file="file_name")
答案 1 :(得分:0)
听起来像是想要list
。
> list(ra, rb, rc)
[[1]]
[1] 1 2 3
[[2]]
[1] 2 3 1 4
[[3]]
[1] 2 3 5 1 4
答案 2 :(得分:0)
> rlist <- lapply( list(a,b,c), rank)
> rlist
[[1]]
[1] 1 2 3
[[2]]
[1] 2 3 1 4
[[3]]
[1] 2 3 5 1 4