Я снова новичок ie с еще одной беспорядочной ситуацией с файлами и папками (благодаря нам, биологам): я получил этот каталог, содержащий огромное количество файлов .txt (~ 900 000+), все файлы были переданы ранее с несовместимым форматом именования: (*
Например, грязные файлы в каталоге выглядят так:
ctrl_S978765_uns_dummy_00_none.txt
ctrl_S978765_3S_Cookie_00_none.txt
S59607_3S_goody_3M_V10.txt
ctrlnuc30-100_S3245678_DMSO_00_none.txt
ctrlRAP_S0846567_3S_Dex_none.txt
S6498432_2S_Fulra_30mM_V100.txt
.....
Как видите, наименование не имеет надежной согласованности. Для меня важен идентификационный код встроенный в них, такой как S978765. Теперь у меня есть список (100 идентификационных кодов) этих идентификационных кодов, которые я хочу.
CSV-файл, содержащий список, как показано ниже, учтите, что у списка есть повторяющийся идентификатор коды в строке из-за различного значения CLnumber во вторых столбцах:
ID code CLnumber
S978765 1
S978765 2
S306223 1
S897458 1
S514486 2
....
Итак, я хочу выполнить следующую задачу: найти все грязные именованные файлы, используя идентификаторы кода, сопоставив их с моим списком. И скопировать их в новый каталог.
Я подумал об использовании list.files (), чтобы получить все файлы .txt и их имена, затем я застрял на следующем шаге в matc По именам кодовых идентификаторов я знаю, как сделать это одной строкой, скажем, «S978765», но если я делаю это один за другим, это почти как ручная копка папки.
Как я могу представить имена кодов ID в столбце 1 в виде списка и сравнить / сопоставить их с грязными именами файлов в каталоге, а затем скопировать их в новую папку?
Большое спасибо , ML