所以我有以下设置。我有一个包含两种不同文件类型的文件夹。一种文件类型(.m)是矩阵文件,另一种文件类型是相应的向量(.txt)。它们具有相同的名称,即matrix1.m和matrix1.txt
我想创建一个列表或数组,以便可以保存每个矩阵和每个对应的向量。我想到了一个熊猫数据框,但是我不知道这在这里是否有用。
有没有办法做到这一点?
for file1 in os.listdir(path):
file1name = os.fsdecode(file1)
if file1.endswith('.m'):
file2 = file1name.replace('.m', '.txt')
file2name = os.fsdecode(file2)
matrix = np.matrix(scipy.io.mmread(os.path.join(path, file1name)).toarray())
vector = np.loadtxt(os.path.join(path, file2name)
continue
答案 0 :(得分:0)
这就是我对待给定的东西的方式-
我需要为每对文件存储一些结果 每对都是独立的 上面的代码不够用的原因是,您想尝试加快速度。
不知道这是否有帮助,但这是一种方法。
pool = ThreadPool()
op_names = {name.split('.')[0] for name in os.listdir(path)}
def operation(name):
matrix_filename = f'name.m'
vector_filename = f'name.txt'
return name, do_op(matrix_filename, vector_filename)
results = pool.map(operation, op_names)