假设我有两个数组,array1和array2,看起来像
ARRAY1
45 46 47 48 49 50
1.0 1.5 1.3 1.2 0.9 1.1
数组2
45 46 47 48 49 50
2.5 5.5 4.5 5.8 1.5 8.4
我希望将它们合并到一个类似于以下内容的数据框中:
1.0 2.5
1.5 5.5
1.3 4.5
1.2 5.8
0.9 1.5
1.1 8.4
数字45到50并不重要。
答案 0 :(得分:11)
array1 <- c(1.0,1.5,1.3,1.2,0.9,1.1)
array2 <- c(2.5,5.5,4.5,5.8,1.5,8.4)
result = cbind(array1, array2)
如果您不想查看任何列名或行名(如问题中所述),则应执行以下操作:
result = as.matrix(cbind(array1, array2))
dimnames(result) <-list(rep("", dim(result)[1]), rep("", dim(result)[2]))
你得到:
> result
1.0 2.5
1.5 5.5
1.3 4.5
1.2 5.8
0.9 1.5
1.1 8.4
答案 1 :(得分:1)
您应该能够合并?rbind
和?t
,或者只使用?cbind
,具体取决于您的数据格式。
例如:
new.array <- t(rbind(array1,array2))
或
new.array <- cbind(array1,array2)
或
new.arrray <- data.frame(array1,array2)
如果你有两个向量,cbind
是最好的方法。但是,假设您有两个数据帧。即:
array1 <- t(data.frame(array1=c(1.0,1.5,1.3,1.2,0.9,1.1)))
array2 <- t(data.frame(array2=c(2.5,5.5,4.5,5.8,1.5,8.4)))
使用cbind
无法提供所需的输出,您需要合并t
和rbind
。
> cbind(array1,array2)
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12]
array1 1 1.5 1.3 1.2 0.9 1.1 2.5 5.5 4.5 5.8 1.5 8.4
> t(rbind(array1,array2))
array1 array2
[1,] 1.0 2.5
[2,] 1.5 5.5
[3,] 1.3 4.5
[4,] 1.2 5.8
[5,] 0.9 1.5
[6,] 1.1 8.4
答案 2 :(得分:-2)
您可以通过下面给定的代码合并到数组,并可以显示所需的格式。
for (int i = 45; i <=50; i++)
{
float[] merge = { array1[i], array2[i] };
}
// to display in required format
for (int j =0; i <merge.Length; i++)
{
Console.WriteLine(merge[i]);
}