#r #bioinformatics
#r #биоинформатика
Вопрос:
У меня есть основной фрейм данных, который содержит 415526 записей (строк), который представляет список белков в 51 виде микроорганизмов. Поскольку каждый белок имеет разное количество белковых доменов, количество столбцов для каждой записи разное.
df
AC_peg_0686__[locus_tag=Adeh_0688] Response_reg Sigma54_activat HTH_8
AC_peg_0687__[locus_tag=Adeh_0689] Ribosomal_L31
AC_peg_0688__[locus_tag=Adeh_0690] Rho_N Rho_RNA_bind ATP-synt_ab
AC_peg_0689__[locus_tag=Adeh_0691] No_Domain
AC_peg_0690__[locus_tag=Adeh_0692] N_methyl
AC_peg_0691__[locus_tag=Adeh_0693] DNA_ligase_aden DNA_ligase_OB DNA_ligase_ZBD HHH_2 BRCT
AC_peg_0692__[locus_tag=Adeh_0694] Acylphosphatase
AC_peg_0693__[locus_tag=Adeh_0695] Radical_SAM DUF2344
AC_peg_0694__[locus_tag=Adeh_0696] RNase_E_G
AC_peg_0695__[locus_tag=Adeh_0697] Virul_fac_BrkB
AC_peg_0696__[locus_tag=Adeh_0698] Bac_DNA_binding
AC_peg_0697__[locus_tag=Adeh_0699] FHIPEP
AC_peg_0698__[locus_tag=Adeh_0700] Bac_export_2
AC_peg_0699__[locus_tag=Adeh_0701] Bac_export_1
AC_peg_0700__[locus_tag=Adeh_0702] Bac_export_3
AC_peg_0701__[locus_tag=Adeh_0703] FliP
AC_peg_0702__[locus_tag=Adeh_0704] FliO
.
.
.
.....and so on....till 415526
аналогично, у меня есть другой файл, в котором есть список белковых доменов. он содержит 38 записей. Я должен сравнить основной фрейм данных со списком и извлечь строки, соответствующие записям списка. мой список выглядит так
df1
Bac_export_1
Bac_export_2
Bac_export_3
Bac_export_4
ChapFlgA
CheC
FHIPEP
Flg_hook
FlgD
FlgD_ig
FlgI
FlgI
FlgM
FlgN
FlhC
FlhD
FlhE
Мне нужны отдельные файлы для каждого домена белка в списке.
Я пытался сравнивать и пересекать функции, но они не были плодотворными.
df3 <- intersect(df$col , df1$col)
вот пример того, как должен выглядеть мой конечный файл. в этом файле есть только записи, которые соответствуют записи ‘MotB_plug’ из списка.
Aliivibrio_salmonicida_LFI1238__peg_0951___VSAL_RS05180 MotB_plug OmpA
Aliivibrio_wodanis__peg_0687___AWOD_RS03580 MotB_plug OmpA
Grimontia_hollisae_ATCC_33564__peg_1011___AL542_RS08920 MotB_plug OmpA
Grimontia_hollisae_ATCC_33564__peg_1828___AL542_RS13325 MotB_plug OmpA
Paraphotobacterium_marinum_NSCS20N07D__peg_0036___CF386_RS00180 MotB_plug OmpA
Vibrio_alginolyticus_ATCC_17749__peg_2782___N646_RS14135 MotB_plug OmpA
Vibrio_alginolyticus_ATCC_17749__peg_3208___N646_RS16270 MotB_plug OmpA
как и выше, для каждого элемента списка должны быть разные файлы.
Комментарии:
1. Пожалуйста, предоставьте образцы вашего df и вашего списка после прохождения каждого из них
dput()
2. это не работает
3. Из чего получен результат
dput(df)
?4. «` Label = c(«», «A2M», «A2M_BRD», ………….. » TSP_3″, «UnbV_ASPIC», «Vault_3», «VCBS», «WD40», «WG_beta_rep», «YwqJ-дезаминаза», «zf-C4_Topoisom»), class = «factor»)), class = «data.frame», row.names = c(NA, -415546L)) «« он показывает все значения столбцов
5. drive.google.com/drive/folders /… это мои файлы.