之前,我已经创建了一个matlab脚本来加载(制表符分隔)txt文件(并在其后进行绘制)。这些文件的大小(3 * x)/长度不相等。基本上,脚本是这样的...
<p style="margin:0pt; line-height:115%; font-size:11pt">
Matlab不在乎长度,并添加零或无。
现在我想用python做同样的事情。这是我当前的python脚本:
<p style="margin:0pt; line-height:115%; font-size:11pt">TEXT VERY IMPORTANT 1 <p style="margin:0pt; line-height:115%; font-size:11pt">TEXT VERY IMPORTANT 2 <p style="margin:0pt; line-height:115%; font-size:11pt">TEXT VERY IMPORTANT 3
,但是由于文件的长度不相等。
使用vstack或串联时,我都得到了以下错误:
ValueError:所有输入数组的维数必须相同
如何添加长度不等的数组。在空白位置添加for i=1:7
filename = ['filename' num2str(i) '.txt']; % @ filename invullen
a{i} = dlmread(filename, '\t'); % import some data
b = a{1,i}(:,1);
c = a{1,i}(:,2);
d = a{1,i}(:,3);
end
值是可以的。我无法更改数组长度的顺序(=文件的顺序)。最长的文件可能不是第一个文件...所以在串联/堆叠文件之前如何匹配长度(新数组或现有数组)。
数据示例:
data = b = c = d = []
for file in range(7):
filename = 'filename'+ str(file+1) + '.txt' # @ filename invullen
data.append(np.loadtxt(filename, dtype=None, delimiter='\t')) # import some data
b = np.concatenate((b, data[file][:,0]))
c = np.concatenate((c, data[file][:,1]))
d = np.concatenate((d, data[file][:,2]))