如何从 python 中的多个数据帧创建单个数据帧?

How to create a single dataframe from many dataframes in python?

我想从多个文件制作一个数据框,但它不能按我想要的方式工作。我想垂直合并,但他们正在水平合并创建新列。我不想要我该如何解决这个问题? 这是我的代码:

path = "C:/Users/nb/Desktop/NetworkCharacteristic/"
fi=glob.glob(path+"*")
li=[]
for file in fi:
    files = glob.glob(file + "/*.txt")
for filename in files:
    frame = pd.read_csv(filename, sep='#')
    li.append(frame)
df = pd.concat(li, axis=1)

我从一个文件夹中的多个文件夹中读取文件。我得到的结果是:“5 行 × 4440 列”

你可以替换这行代码:

df = pd.concat(li, axis=1)

作者:

df = pd.concat(li, axis=0, ignore_index=True)

但是,如果你想要一个最直接的方式来做到这一点,我建议:

import glob
import pandas as pd

files = glob.glob("C:/Users/nb/Desktop/NetworkCharacteristic/*/*.txt")
dfs = [pd.read_csv(f, header=None, sep="#") for f in files]

df = pd.concat(dfs, ignore_index=True)