【发布时间】:2021-08-25 07:44:19
【问题描述】:
我可以使用 NumPy 垂直堆栈连接目录中的所有文件。但与 pandas 相比,它需要很长时间(合并约 30 秒,而 pandas 只需约 3 秒即可合并)
import numpy as np
from glob import glob
files = sorted(glob('ILU-545*.txt'))
print(files)
array = np.loadtxt(files[0], delimiter='\t')
for file in files[1:]:
array = np.vstack((array, np.loadtxt(file, delimiter='\t')))
array.shape=(2000000,16) # 这没问题,但与 pandas 相比需要更多时间
enter image description here
在 pandas 中,我可以调用目录中的所有文件,但连接后 data.shape 与 array.shape 不同
import pandas as pd
from glob import glob
files = sorted(glob('ILU-545*.txt'))
print(files)
data = pd.concat((pd.read_csv(file, delimiter='\t') for file in files))
data.head()
data.shape
谁能帮我用 pandas 修复数据的形状?提前致谢。
【问题讨论】:
标签: python-3.x pandas list time-series numpy-ndarray