首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >根据公共列名合并两个数据格式

根据公共列名合并两个数据格式
EN

Stack Overflow用户
提问于 2020-03-24 23:34:18
回答 1查看 1.2K关注 0票数 1

我有两个数据帧:

df1 (所有基因及其表达值-每一列名称都是一个基因)

df2 (需要分析的基因列表--每个基因都是一个列名,没有任何额外的数据)

基本上,我想通过列名将它们合并,获得第三个数据框架,即df1,但只有两个数据帧上的基因(常见的列名)。

我不知道我是否解释得很好,但如果我能提供更多的信息,请告诉我。

数据帧示例:

代码语言:javascript
运行
复制
df1 <- data.frame(matrix(ncol = 4, nrow = 0))
x1 <- c("name", "school", "job", "gender")
colnames(df1) <- x1

df2 <- data.frame(matrix(ncol = 3, nrow = 0))
x2 <- c("name", "age", "gender")
colnames(df2) <- x2

基本上,这里我想要的是df1,但是可以简化为df1和df2上的列,这就是“名称”和“性别”。但是在我的工作中,我有很多基因,所以我不能逐个基因去做。

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-24 23:56:51

我们可以在“df1”和“df2”的列名上使用df2来选择“df1”的列

代码语言:javascript
运行
复制
df1new <- df1[intersect(names(df1), names(df2))]

或使用dplyr

代码语言:javascript
运行
复制
library(dplyr)
df1new <- df1 %>%
            select(intersect(names(.), names(df2))
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60840919

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档