Я пытаюсь объединить один столбец из нескольких таблиц, где столбец имеет разные имена в каждой таблице.
У меня есть несколько таблиц (TXT-файлов), которые имеют несколько столбцов и настроены, например:
ФАЙЛ 1:
Target total_coverage avg_coverage sample1_total_cvg sample1_mean_cvg...
Contig1493 19515 34.18 19515 34
Contig1494 594 18 594 18
Contig1495 50372 40.23 50372 40
Contig1496 1985 21.81 1985 22
.
.
.
ФАЙЛ 2:
Target total_coverage avg_coverage sample1_total_cvg sample1_mean_cvg...
Contig1493 22345 33.1 22345 36
Contig1494 466 25 4556 12
Contig1495 50000 30.2 47987 33
Contig1496 4530 26.4 45786 23
.
.
.
и т. Д.
первые три столбца имеют одинаковые имена во всех таблицах, остальные столбцы имеют разные имена (соответствующие различным отдельным образцам)
Япытаясь создать таблицу, в которой я храню идентификатор и первый столбец, а затем объединить каждую из таблиц по 5-му столбцу (sampleID_mean_cvg), чтобы моя итоговая таблица выглядела следующим образом:
Target sample1_mean_cvg sample2_mean_cvg sample3_mean_cvg ...
Contig1493 34 12 22
Contig1494 18 13 22
Contig1495 40 12 13
Contig1496 22 55 21
.
.
.
Я искалсовсем немного и думал, что смогу добраться до него, используя Саппи.Итак, вот что я пытался.У меня есть все таблицы в каталоге, и я делаю:
smpl.Tables <- list.files(pattern = ".txt")
Затем я создаю пустой список, который будет служить контейнером для приема входящих файлов
list.data<-list()
создать цикл для чтения ваших данных
for (i in 1:length(smpl.Tables))
{
list.data[[i]]<-read.table(smpl.Tables[i])
}
добавить имена ваших данных в список
names(list.data)<-smpl.Tables
Записать в новый файл
write.csv(sapply(list.data,"[", 5),'contigDepth.csv')
Вот что я получаю, когда выполняю свой код:
sample1_FileName sample2_Filename sample3_Filename...
sample1_mean_cvg sample2_mean_cvg sample3_mean_cvg...
1 34 12 22
2 18 13 21
3 40 12 13
4 22 55 21
.
.
.
Я не могу понять, как сохранить идентификаторы первого столбца при объединении 5-го столбца из каждой таблицы.Я полагаю, я мог бы пойти в окончательный файл и скопировать вставить вещи и удалить первую строку имен файлов ... но есть способ сделать это без этого.У кого-нибудь есть предложения?Я был бы очень признателен за любую помощь!
Приветствия