r - 如何在不混淆R中的顺序的情况下将一列的每个值添加到另一列的相应行下方
问题描述
我找不到这个问题的解决方案/答案,因此问你们:-)
我有以下合并挑战,如下例所示:如何在不混淆 R 中的顺序的情况下将一列的每个值(每个任意值,不能排序)添加到另一列的相应行下方?我无法对列进行排序,值是任意的。这只是使系统清晰的示例。
之前的数据框:
column1 column2
valueColumn1row1 valueColumn2row1
valueColumn1row2 valueColumn2row2
. .
. .
. .
之后的数据框:
finalcolumn
valueColumn1row1
valueColumn2row1
valueColumn1row2
valueColumn2row2
.
.
.
有什么建议么?提前致谢!
解决方案
一种方法是使用matrix[matrix]
子集:
# create example data
df <- data.frame(
col1 = letters[1:6],
col2 = letters[21:26],
stringsAsFactors = F
)
# convert data to a matrix
dfm <- as.matrix(df)
# create a subsetting-matrix of the elements that you want, in the order that you want
j <- ncol(dfm)
sub <- matrix(c(rep(1:nrow(df), each=j), rep(1:j, nrow(df))), ncol=2)
# create the desired column
dfm[sub]
示例数据
> df
col1 col2
1 a u
2 b v
3 c w
4 d x
5 e y
6 f z
结果
> data.frame(dfm[sub])
dfm.sub.
1 a
2 u
3 b
4 v
5 c
6 w
7 d
8 x
9 e
10 y
11 f
12 z
推荐阅读
- reactjs - 胜利乡土图
- reactjs - 如何防止 Visual Studio 代码破坏我的 jsx 代码?
- java - Eclipse Photon 中的 Spring Boot 调试模式不起作用
- c# - c# Moq objects void方法,改变objects参数值
- hadoop - Apache Phoenix 无法创建架构
- excel - 在 Excel VBA 中暂停循环,直到另一个 Sub 完成
- c# - 检查 sql 数据库中是否存在记录返回错误结果
- react-native - 反应原生找不到变量中心
- javascript - TypeError: UserSchema is not a constructor (Schema is not a constructor MongoDB)
- python - 如何使用 Discord.py 重写更改机器人用户名/头像?