我有多个txt文件,每个文件只有一列,而我正尝试将它们全部合并为一个csv。理想情况下,我希望每一列都有它们来自的文件的名称,而我被困在最后一部分。
文本文件如下所示(2个示例,但我还有更多示例):
c.Daphnia.txt
geneA
geneB
geneC
c.Drosophila.txt
geneA
geneD
geneE
c.Mouse.txt
geneA
geneV
geneX
目前我正在这样做:
paste -d',' c* > all.csv
输出看起来像这样,它获得了所有列,但没有标题。
谢谢
答案 0 :(得分:0)
custom_paste() (
IFS=$(printf ',') # or IFS=$','
printf '%s\n' "$*"
paste -- "$@"
)
custom_paste c* > all.csv
答案 1 :(得分:0)
如果它可以帮助某人,我最终使用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)