【发布时间】:2021-08-12 18:15:54
【问题描述】:
我是 R 编程新手,所以我搜索了很多,但找不到我正在寻找的确切内容。
我有两个类似的数据框;
数据框 1:
Accession `Gene Symbol` `siCON-1` `siCON-2` `siCON-3` `siTR-1` `siTR-2` `siTR-3` `log2(siTR/s~ p_val `-log10(t.test si~
<chr> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 Q14258 TRIM25 2283. 2570. 2749. 489 498. 480. -2.37 1.14e-4 3.94
2 Q9P035 PTPLAD1; HACD3 1080. 857. 1060. 338. 439. 264 -1.52 1.74e-3 2.76
3 Q9NP99 TREM1 45.7 NA 65.3 55 32.7 3.2 -0.873 3.10e-1 0.508
4 P35226 BMI1; COMMD3-~ 46.3 42.6 36.1 12.3 23.7 12.6 -1.36 6.03e-3 2.22
5 Q14117 DPYS 44.9 NA 73.1 51.7 36.9 0.8 -0.985 2.79e-1 0.554
6 Q6IAN0 DHRS7B 173. 149. 213. 92.3 73.7 62.6 -1.22 7.77e-3 2.11
数据框 2:
V1 V2 V3 V4 V5 V6
1 A0A075B6P5 R-HSA-109582 https://reactome.org/PathwayBrowser/#/R-HSA-109582 Hemostasis TAS Homo sapiens
2 A0A075B6P5 R-HSA-1280218 https://reactome.org/PathwayBrowser/#/R-HSA-1280218 Adaptive Immune System TAS Homo sapiens
3 A0A075B6P5 R-HSA-1280218 https://reactome.org/PathwayBrowser/#/R-HSA-1280218 Adaptive Immune System IEA Homo sapiens
4 A0A075B6P5 R-HSA-1643685 https://reactome.org/PathwayBrowser/#/R-HSA-1643685 Disease TAS Homo sapiens
5 A0A075B6P5 R-HSA-1643685 https://reactome.org/PathwayBrowser/#/R-HSA-1643685 Disease IEA Homo sapiens
6 A0A075B6P5 R-HSA-166658 https://reactome.org/PathwayBrowser/#/R-HSA-166658 Complement cascade TAS Homo sapiens
我只想从表 2 中的表 1 中搜索每个 Accession ID,如果匹配,我想将表 2 中的 V2 和 V4 复制到表 1 中。
我该怎么做?提前致谢。
编辑:抱歉造成混淆,Accession 是匹配项,V1 是第二个数据帧中的匹配项。
我想将“Q14258”作为示例从第一个数据帧与第二个数据帧 V1 进行比较,如果匹配,我想从第二个数据帧中获取 V2 和 V4,并在数据帧 1 中添加新列。我希望这可以清除它。
Edit2:我用过这段代码
matches <- match(dataframe1$Accession,dataframe2$V1)
我可以找到位置,但我后来卡住了。
[1] 87059 130058 126612 50691 86417 97429 80338 NA NA 34876 132613 138390 86681 48874 NA NA NA 121653 NA
[20] 83210 NA NA 22832 98354 104386 80531 11963 338 NA 58060 50032 12127 133036 11434 111307 26229 NA 89105
[39] 107669 2329 57826 NA 12101 35659 NA 100915 NA 119519 NA NA 92556 128938 13341 130104 133727 103605 NA
[58] 105145 124370 27343 NA 100357 47092 93135 39138 66942 NA 23662 116234 NA 85757 NA 125647 NA NA NA
[77] 59705 NA 109960 44700 135309 121942 NA 74508 NA NA 111882 15365 94138 122808 137613 58407 28641 NA 110505
[96] 76572 NA 104295 NA 130022 71937 63190 101249 113658 133776 36281 NA 61907 56843 NA 94265 24763 119085 81442
[115] NA NA 89343 NA NA 100597 NA 4782 131283 88704 NA NA 67450 57507 118512 10851 NA 12182 58482
【问题讨论】:
-
我在数据框 2 中看不到 Accession ID。请提供您的样本数据的预期输出并说明如何识别匹配项。
-
感谢@Limey,我想以“Q14258”为例,从第一个数据帧到第二个数据帧 V1 进行比较,如果匹配,我想从第二个数据帧中获取 V2 和 V4在数据框 1 中添加新列。我希望这可以清除它。谢谢
-
Q14258没有出现在数据框 2 的任何位置,因此无法匹配。 -
谢谢@Limey,我没有把所有数据放在这里,它是由大约 600k 数据组成的数据框的顶部。能告诉我你是怎么搜索的吗?谢谢
标签: r dataframe bioinformatics bioconductor