我想从多个文件中创建一个数据帧,但它不能以我想要的方式工作。我想垂直合并,但它们是水平合并,创建了新的列。我不想这样,我怎么才能解决这个问题呢?下面是我的代码:
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列“
发布于 2021-08-21 04:56:03
您可以替换下面这行代码:
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)
https://stackoverflow.com/questions/68873181
复制相似问题