【问题标题】:How to output the columns of two different data frames in a separate data frame in R [duplicate]如何在R中的单独数据框中输出两个不同数据框的列[重复]
【发布时间】:2020-07-23 04:18:30
【问题描述】:

我有 2 个数据框,每个数据框有 2 列

df_prefix:

MacroNode_Prefix                                         Prefix
AAAAATTCGA                                                 ATG
TGACGGCTAT                                                 C
GCATCTTAAC                                                 GC

df_suffix

 MacroNode_Suffix                                         Suffix
  AAAAATTCGA                                                G
  CGAATCATTG                                              ATGGAC
  GCATCTTAAC                                               TCG

我想创建第三个数据框,其中两个数据框的公共节点将与各自的前缀和后缀一起存在。 喜欢:

Prefix                       Common_Node                              Suffix
ATG                          AAAAATTCGA                                 G
GC                           GCATCTTAAC                                TCG

【问题讨论】:

  • 如果您包含一个简单的reproducible example,其中包含可用于测试和验证可能解决方案的示例输入和所需输出,则更容易为您提供帮助。
  • 您好,抱歉。我已经编辑了问题并提供了示例。如果我可以提供您可能需要的任何其他详细信息,请告诉我。
  • 看到你预期的结果,我想你想用inner_join():inner_join(df_prefix, df_suffix, by = c("MacroNode_Prefix" = "MacroNode_Suffix")) %>% rename(common_node = MacroNode_Prefix)

标签: r dataframe bioinformatics


【解决方案1】:

也许不是最优雅的方式,但足够了

library(dplyr)
bind_cols(df_prefix, df_suffix) %>% select(Prefix, `MacroNode_Prefix`, Suffix) %>% 
rename(Common_Node = `MacroNode_Prefix`)

# A tibble: 3 x 3
Prefix Common_Node Suffix
 <chr>  <chr>       <chr> 
1 ABC    Bla-bla     XYZ   
2 EFD    Bla-bla     KLM   
3 HIJ    Bla-bla     OPR

【讨论】:

  • 您好,感谢您的回答。我试过这个,我得到一个错误。实际上,两个数据框的大小都不同。也许我应该早点提到这一点。 df_pref 有 435 行,df_suff 有 441 行。
  • 您要么需要 join 数据帧并删除一些东西,要么 cbind 类似的东西或类似的东西 stackoverflow.com/questions/40399229/…
  • 感谢@Anankin Skywalker 的链接。我已经使用了合并功能。
猜你喜欢
  • 2021-02-18
  • 2021-09-04
  • 2019-03-31
  • 2021-11-12
  • 2019-12-20
  • 1970-01-01
  • 2016-10-30
  • 2021-11-20
  • 1970-01-01
相关资源
最近更新 更多