我有数百个约 1000 万行的全基因组关联研究文件。对于file1.txt:
SNP BP B SE P
123 12 0.1 0.01 0.1
...
Run Code Online (Sandbox Code Playgroud)
我想在每个文件的末尾添加一列,其中只包含该文件的名称,以便最终结果file1.txt是:
SNP BP B SE P name
123 12 0.1 0.01 0.1 file1.txt
...
Run Code Online (Sandbox Code Playgroud)
我想对数百个文件执行此操作。目前我可以使用以下方法添加一列:
for file in *.txt; do awk 'BEGIN{OFS="\t"}{print $0, FILENAME}' $file; done
Run Code Online (Sandbox Code Playgroud)
这将打印整个文件,但不会覆盖现有文件。我只想向已经存在的数据框添加一列。任何建议非常感谢!