r - 如何使用 dplyr 和 tidyr 解决 r 中的数据框连接问题?
问题描述
我有一个具有以下特征的数据框:
Z Y X1 X2 X3 X4 X5 ... X30
A n1 1 2 1 2 1 2 1 2
B n2 1 2 1 2 1 2 1 2
C n3 1 2 1 2 1 2 1 2
D n4 1 2 1 2 1 2 1 2
.
.
.
我试图将新列与 z、y 和 x 相关联。有些像这样:
Newcolumn zyx
1 x-y-z
我需要这样的数据框:
colum1 colum2
1 A+n1+X1.headername 1
2 B+n2+X2.headernam 2
3 C+n3X3.headername 1
4 D+n4X4.headername 2
. .
. .
. .
我正在构建这个功能:
library(dplyr)
library(tidyr)
df_zy = df %>% pivot_longer(., cols = starts_with("X"), names_to = "Variables",
values_to = "Value") %>%mutate(NewColumn = paste0(Z,"-",Y,"-",Variables)) %>%
select(NewColumn, Value)
我有一些这样的:
> df_zy
# A tibble: 8 x 2
NewColumn Value
<chr> <dbl>
1 A-n1-X1 1
2 A-n1-X2 2
3 B-n2-X1 1
4 B-n2-X2 2
5 C-n3-X1 1
6 C-n3-X2 2
7 D-n4-X1 1
8 D-n4-X2 2
但新列和值列不对应(例如 X1 – 2,而不是 X1 – 1)。有没有人可以选择解决这个问题?谢谢!
解决方案
推荐阅读
- node.js - 无法对猫鼬查询进行排序
- asp.net - 无法在 asp.net 中加载图像文件:System.IO.FileNotFoundException HResult=0x80070002 Message=data-science.png
- python - 如何将熊猫数据框的相邻列分组为三组?
- audio - 如何将 mp4 文件转换为具有相同持续时间的 wav?
- sonarqube - 如何限制用户更新错误、代码异味、漏洞、重复
- angular - 直接路由到指定页面
- node.js - 具有自定义 ON 条件的左外连接 sequelize
- mysql - 如何将 MySQL 配置为 Tomcat 9 域以获取用户凭据
- javascript - 根据使用角度js的要求的日期和时间格式
- python - 是否可以同时运行 pdb 和 unittest python 模块?