Python CSV合并并向每个文件中的每个列添加新行

Python CSV合并并向每个文件中的每个列添加新行,python,csv,pandas,machine-learning,pycharm,Python,Csv,Pandas,Machine Learning,Pycharm,我有很多文件,文件标准是这样的 TestAP300 TestBP300 TestCP300 ... TestHP30 例如: Data A: "-0.9148","-1.7609","0.8441","-3.0872" "-2.4155","-0.7446","0.7238","-1.5506" Data B: "-0.2695","0.2271","0.7103","-4.7732" "-0.5421","-0.6235","0.2131","-3.3143" I would l

我有很多文件,文件标准是这样的

TestAP300
TestBP300
TestCP300
...
TestHP30
例如:

Data A: 

"-0.9148","-1.7609","0.8441","-3.0872"
"-2.4155","-0.7446","0.7238","-1.5506"

Data B: 

"-0.2695","0.2271","0.7103","-4.7732"
"-0.5421","-0.6235","0.2131","-3.3143"

I would like to create file below :

"-0.9148","-1.7609","0.8441","-3.0872","A"
"-2.4155","-0.7446","0.7238","-1.5506","A"
"-0.2695","0.2271","0.7103","-4.7732","B"
"-0.5421","-0.6235","0.2131","-3.3143","B"
每个文件有10列和4行。我想将文件合并到一个文件中,并向每列添加新行


提前感谢

输入文件:

import os
import glob
import csv
import pandas as pd

files = glob.glob(r'D:\temp\.data\43055344\*.csv')

pd.concat(
    [pd.read_csv(files[0], header=None).assign(f=os.path.basename(os.path.splitext(f)[0]))
     for f in files
    ],
    ignore_index=True
).to_csv(r'd:/temp/out.csv', header=None, index=False, quoting=csv.QUOTE_ALL)
"-0.9148","-1.7609","0.8441","-3.0872","a"
"-2.4155","-0.7446","0.7238","-1.5506","a"
"-0.9148","-1.7609","0.8441","-3.0872","b"
"-2.4155","-0.7446","0.7238","-1.5506","b"
a、 csv:

"-0.9148","-1.7609","0.8441","-3.0872"
"-2.4155","-0.7446","0.7238","-1.5506"
b、 csv:

"-0.2695","0.2271","0.7103","-4.7732"
"-0.5421","-0.6235","0.2131","-3.3143"
解决方案:

import os
import glob
import csv
import pandas as pd

files = glob.glob(r'D:\temp\.data\43055344\*.csv')

pd.concat(
    [pd.read_csv(files[0], header=None).assign(f=os.path.basename(os.path.splitext(f)[0]))
     for f in files
    ],
    ignore_index=True
).to_csv(r'd:/temp/out.csv', header=None, index=False, quoting=csv.QUOTE_ALL)
"-0.9148","-1.7609","0.8441","-3.0872","a"
"-2.4155","-0.7446","0.7238","-1.5506","a"
"-0.9148","-1.7609","0.8441","-3.0872","b"
"-2.4155","-0.7446","0.7238","-1.5506","b"
结果:

import os
import glob
import csv
import pandas as pd

files = glob.glob(r'D:\temp\.data\43055344\*.csv')

pd.concat(
    [pd.read_csv(files[0], header=None).assign(f=os.path.basename(os.path.splitext(f)[0]))
     for f in files
    ],
    ignore_index=True
).to_csv(r'd:/temp/out.csv', header=None, index=False, quoting=csv.QUOTE_ALL)
"-0.9148","-1.7609","0.8441","-3.0872","a"
"-2.4155","-0.7446","0.7238","-1.5506","a"
"-0.9148","-1.7609","0.8441","-3.0872","b"
"-2.4155","-0.7446","0.7238","-1.5506","b"

您能否提供两个输入数据集(3列,各3行)和所需结果数据集的小型可重复示例?完成。谢谢你的提示:)谢谢你,这给了我一个做这件事的想法。