现在的问题是如何将所有“新”matlab文件放在一个文件夹中。否则我将未交换的与交换的混合。我的档案很大!
我编写了代码,但即使我指定放置文件的位置,它也不起作用!
read_files = glob.glob('/home/FeaturesF3/*.mat')
write_files = glob.glob('/home/Swapped/'
x2D = np.array([])
for f in read_files:
x3D = sio.loadmat(f)['features']
x2D = x3D.swapaxes(0,1)
outputFileName = join (write_files, f + '_swapped.mat')
sio.savemat(outputFileName, {"x2D":x2D})
我想阅读许多位于“FeaturesF3”文件夹内的Matlab文件(20),交换索引,然后创建其他20个新的Matlab文件。 使用我的代码,我只获得1“* .mat”文件。 我在哪里以及如何指定“新”Matlab文件的名称,并且必须有20而不仅仅是1?
这是我的代码:
read_files = glob.glob('/home/FeaturesF3/*.mat')
x2D = np.array([])
for f in read_files:
x3D = sio.loadmat(f)['features']
x2D = x3D.swapaxes(0,1)
sio.savemat('/home/FeaturesF3/*.mat', {"x2D":x2D})
答案 0 :(得分:1)
sio.savemat('/home/FeaturesF3/*.mat', {"x2D":x2D})
是你的问题:你总是使用相同的文件名(顺便说一句,看起来无效)。
如果只是附加到输入文件名呢?
for f in read_files:
…
sio.savemat(f + "_swapped.mat", {"x2D":x2D})