将百分比行添加到Dataframe

时间:2016-01-05 18:34:55

标签: r

我正在尝试绑定两个数据帧。第一个具有定量值,第二个具有与行的相对值。您可以看到每个数据都有第0,1,3,5,7个颜色。但是如何移动紧邻观察值的相对值?

我试过这样做:

cbind(x,y)
      0    1    3     5     7      0     1     3     5     7
11   747    0    0     0     0 100.00  0.00  0.00  0.00  0.00
12   249    0    0     0     0 100.00  0.00  0.00  0.00  0.00
13  1454    0    0     0   708  67.25  0.00  0.00  0.00 32.75
14   708    0    0     0     0 100.00  0.00  0.00  0.00  0.00
15  2661    0    0   249     0  91.44  0.00  0.00  8.56  0.00

3 个答案:

答案 0 :(得分:1)

使用dplyr的select,您可以通过以下方式执行此操作:

library(dplyr)
colnames(df) <- c('col0', 'col1', 'col3', 'col5', 'col7', 'col0percent', 'col1percent', 'col3percent', 'col5percent', 'col7percent')
df <- select(df, col0, col0percent, col1, col1percent, col3, col3percent, col5, col5percent, col7, col7percent)

答案 1 :(得分:0)

不是最佳的,但仅使用标准包

nc <- ncol(x)
nr <- nrow(x)
i <- seq(1, by = 2, len = nc)
df <- data.frame(matrix(NA, ncol = nc, nrow = nr))
df[,i]    <- x
df[,i+1]  <- y

答案 2 :(得分:0)

只需使用具有所需列顺序的索引。

cbind(x,y)[c(1,6,2,7,3,8,4,9,5,10)]