объединить несколько текстовых файлов в CSV - добавить заголовок - PullRequest
0 голосов
/ 18 февраля 2020

У меня есть несколько TXT-файлов, только один столбец в каждом, и я пытаюсь объединить их все в один CSV. В идеале я хочу, чтобы у каждого столбца было имя файла, откуда они берутся, и я застрял в этой последней части.

текстовые файлы выглядят так (2 примера, но я получил гораздо больше):

c.Daphnia.txt
geneA
geneB
geneC

c.Drosophila.txt
geneA
geneD
geneE

c.Mouse.txt
geneA
geneV
geneX

Желаемый вывод: enter image description here

На данный момент я делаю это: paste -d',' c* > all.csv Вывод выглядит так, он получил все столбцы, но без заголовка.

enter image description here Не могли бы вы помочь мне, пожалуйста?

Спасибо

Ответы [ 2 ]

0 голосов
/ 19 февраля 2020

В случае, если это может помочь кому-то, я в конечном итоге использовал python и делал это так:

import pandas as pd
df1=pd.read_csv('a.txt',names=['a'])
df2=pd.read_csv('b.txt',names=['b'])
df3=pd.read_csv('c.txt',names=['c'])
df4=pd.read_csv('d.txt',names=['d'])
df5=pd.read_csv('e.txt',names=['e'])

result=pd.concat([df1,df2,df3,df4,df5],axis=1)
result.to_csv('mergedfile.csv',index=False)
0 голосов
/ 18 февраля 2020
custom_paste() (
  IFS=$(printf ',') # or IFS=$','
  printf '%s\n' "$*"
  paste -- "$@"
)

custom_paste c* > all.csv
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...