从笛卡尔文件列表中访问数据

时间:2015-12-30 05:15:28

标签: python csv pandas

我在一个文件夹中有很多csv文件,我已经把它变成了一个笛卡尔列表:

import os 
import itertools

filelist=os.listdir(r'pathway_to_folder')
result = list(itertools.product(filelist,filelist))

结果的内容是这样的:

('file 1', 'file 2')
('file 1', 'file 3')
('file 2', 'file 1')
('file 2', 'file 3')
('file 3', 'file 1')
('file 3', 'file 2')

我怎么能做一些像打印result中某个项目内容一样简单的事情?截至目前,他们被认为是我能说的字符串。

2 个答案:

答案 0 :(得分:1)

对每个项目进行迭代可能会有所帮助

csv

正如评论中所提到的,可能有更好的方法来实现您的目标,具体取决于它们是什么。

E.g使用一个或多个特定的库,如numpypandasswitchTo()等。

答案 1 :(得分:1)

IIUC您需要打印csv格式的文件内容。您可以使用pandas read_csv

执行此操作
import pandas as pd
for files in result:
    print(pd.read_csv(files[0]), pd.read_csv(files[1])

注意:您需要传递read_csv函数中文件的完整路径。您可以使用os.path.abspath对每个元素执行此操作,例如pd.read_csv(os.path.abspath(files[0]))