Python 如何从文件夹中选择csv文件中的列?
我试图从我的文件中选择“第3列”,然后将它们合并到一个文件中。问题是,当我梳理这些列时,它们的模式与文件夹中的文件不同。例如,我在文件夹“First、Second和Third”中有三个文件。下面给出的代码总是在读取“第一”文件之前读取“第二”文件。有人能帮我吗Python 如何从文件夹中选择csv文件中的列?,python,pandas,file,export-to-csv,glob,Python,Pandas,File,Export To Csv,Glob,我试图从我的文件中选择“第3列”,然后将它们合并到一个文件中。问题是,当我梳理这些列时,它们的模式与文件夹中的文件不同。例如,我在文件夹“First、Second和Third”中有三个文件。下面给出的代码总是在读取“第一”文件之前读取“第二”文件。有人能帮我吗 import glob import pandas as pd import numpy as np from tqdm import tqdm extension = 'dat' all_filenames = [i for i in
import glob
import pandas as pd
import numpy as np
from tqdm import tqdm
extension = 'dat'
all_filenames = [i for i in glob.glob('*.{}'.format(extension))]
df = pd.DataFrame(np.nan, index = np.arange(1394521), columns = ["velocity-magnitude"])
for i,f in tqdm(enumerate(all_filenames)):
reader = pd.read_csv(f, sep=r"\s+")
col = reader.iloc[:,[3]]
frames = [df,col]
df = pd.concat(frames, axis=1,join="outer")
df.to_csv('combined.dat', mode='a', header = False, index = False)
glob.glob
在内部使用os.listdir
。这解释了文件的任意顺序。如果您想要一些特定的排序,那么您必须自己应用它,例如,使用排序(glob.glob('*.{}'.format(extension))
谢谢NYC编码器,是的,这个排序函数是我问题的解决方案