2 つの data.frames があります (ここでは、大きすぎるためサブセットのみが報告されています)。
DF1:
"G1" "G2" IL3RA ABCC1 SRSF9 ADAM19 IL22RA2 BIK UROD ALG3 SLC35C2 GGH OR12D3 SEC31A OSBPL3 HIST1H2BK
DF2:
"S1" "S2" "S3" IL3RA 0 0 SRSF9 1 1 A1CF 0 0 A1CF1 1 1 GGH 2 0 HIST1H2BK 0 0 AAK1 0 0
次の出力が必要です。
"G1" "S2" "S3" "G2" "S2" "S3" IL3RA 0 0 GGH 2 0 SRSF9 1 1 HIST1H2BK 0 0
別の同様の状況で提案された機能を適用しました。機能は次のとおりです。
lapply(DF1, function(x) DF2[na.omit(match(DF2[[1]], x)), ])
驚くべきことに、この場合は機能しません。理由は本当にわかりません..新しいデータで「data.frameの列を%in%オーバーする」というタイトルの投稿に投稿されたケースを正確に再現しましたが、何もしませんでした。DF1 と DF2 は大きすぎるので、クラスターを使用して、問題が使用可能なメモリにあると仮定して、より多くのメモリを使用しようとしましたが、何もありませんでした。それが与える出力は次のとおりです。
"S1" "S2" "S3" IL3RA 0 0 SRSF9 1 1 "S1" "S2" "S3" GGH 2 0 AAK1 0 0
誰でも私を助けてもらえますか?
一番
B.