Python 如何在循环中使用pandas concat合并大量子SV
我正在尝试将大量SubCSV合并到一个CSV 我希望它们以行对齐方式合并 我已经尝试了Python 如何在循环中使用pandas concat合并大量子SV,python,pandas,Python,Pandas,我正在尝试将大量SubCSV合并到一个CSV 我希望它们以行对齐方式合并 我已经尝试了pd.concat([df1,df4],axis=1) 但结果CSV的数据是最后一个subCSV的数据。它没有合并 我想要的是: A B AB A + B -> AB A B AB 代码如下: def listdirInMac(path): os_list = os.listdir(path) for item in os_list
pd.concat([df1,df4],axis=1)
但结果CSV的数据是最后一个subCSV的数据。它没有合并
我想要的是:
A B AB
A + B -> AB
A B AB
代码如下:
def listdirInMac(path):
os_list = os.listdir(path)
for item in os_list:
if item.startswith('.') and os.path.isfile(os.path.join(path, item)):
os_list.remove(item)
os_list.sort()
return os_list
root='/Users/alex/Documents/data/want/test/'
result=pd.DataFrame()
pieces=[]
#all txt data will append on this variable
for file in listdirInMac(root):
if 'CSV' in file:
pathname=os.path.join(root,file) #file path
#print pathname
temp=pd.read_csv(pathname,usecols=[1],header=None) # read csv
result = pd.concat([newfile,temp],axis=1)
result.to_csv('/Users/alex/Documents/data/1/result.csv')
我建议您读取循环中的数据帧,并在外部调用
pd.concat
一次
现在已经有了数据帧列表,只需将其传递到concat
:
df = pd.concat(pieces, axis=1)
df.to_csv(...)
我建议您读取循环中的数据帧,并在外部调用
pd.concat
一次
现在已经有了数据帧列表,只需将其传递到concat
:
df = pd.concat(pieces, axis=1)
df.to_csv(...)