Matlab。位置 2 的索引超出数组边界(不得超过 1)
Matlab. Index in position 2 exceeds array bounds (must not exceed 1)
我正在尝试将 FFT 应用于一组数据。我正在使用这个脚本
filepath = 'C:\Users\notmyname\Desktop\note.txt';
data = importdata(filepath);
dt=data(2,1)-data(1,1);
Fs=1/dt;
L=length(data(:,2));
data_fft_full=abs(fft(data(:,2))/L);
data_fft=data_fft_full(1:L/2+1);
f=Fs*(0:(L/2))/L;
figure
plot(f,data_fft)
xlabel('f (Hz)')
我收到错误“位置 2 中的索引超出数组边界(不得超过 1)”。
Untitled2 错误(第 5 行)
L=长度(数据(:,2));
这是什么意思?笔记文件包含一列数字,每个数字之间有一个 space,
如果你的 note.txt
是一个包含 单列 数字的文件,它会给你索引错误,因为你将调用第二列,当你只有一个,那么你可以做的就是reshape()
。我建议您检查 note.txt
文件结构,因为代码很好。如果您无法解决,请将其附加到post中,我们可以查看。
顺便说一下,note.txt
必须是这样的:
1 3
4 -5
6 2
...
干杯,
我正在尝试将 FFT 应用于一组数据。我正在使用这个脚本
filepath = 'C:\Users\notmyname\Desktop\note.txt';
data = importdata(filepath);
dt=data(2,1)-data(1,1);
Fs=1/dt;
L=length(data(:,2));
data_fft_full=abs(fft(data(:,2))/L);
data_fft=data_fft_full(1:L/2+1);
f=Fs*(0:(L/2))/L;
figure
plot(f,data_fft)
xlabel('f (Hz)')
我收到错误“位置 2 中的索引超出数组边界(不得超过 1)”。
Untitled2 错误(第 5 行) L=长度(数据(:,2));
这是什么意思?笔记文件包含一列数字,每个数字之间有一个 space,
如果你的 note.txt
是一个包含 单列 数字的文件,它会给你索引错误,因为你将调用第二列,当你只有一个,那么你可以做的就是reshape()
。我建议您检查 note.txt
文件结构,因为代码很好。如果您无法解决,请将其附加到post中,我们可以查看。
顺便说一下,note.txt
必须是这样的:
1 3
4 -5
6 2
...
干杯,