matlab - MATLAB。位置 2 的索引超出数组边界(不得超过 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=length(data(:,2));
这是什么意思?注释文件包含一列数字,每个数字之间有一个空格,
解决方案
如果你note.txt
的文件只有一列数字,它会给你索引错误,因为当你只有一列时你会调用第二列,在这种情况下你可以做的是reshape()
. 我建议您检查note.txt
文件结构,因为代码很好。如果您无法解决,请将其附加到帖子中,我们可以检查它。
顺便说一句,note.txt
必须是这样的:
1 3
4 -5
6 2
...
干杯,
推荐阅读
- oauth-2.0 - keycloak 令牌自省总是以 {"active":false} 失败
- android - 我可以通过 Firebase Admin SDK 接收来自设备的上游消息,而无需在应用程序服务器上实现 XMPP
- github - 使用 Travis-CI 将不同的分支部署到不同的 Heroku 应用程序
- caffe - 在 pytorch 和 caffe 之间转换模型的最优雅的方法是什么?
- angular - 绑定在 mat-table 内的 mat-autocomplet 存在问题 - Angular 5
- typo3 - Typo3:页面树中缺少根页面图标(Typo3 版本 9.5.1)
- combinatorics - 如何在 R 中进行最佳组合选择
- javascript - 在JavaScript(NodeJs)中调用对象内部的函数名称时有所不同
- mysql - 如何从 Google Cloud 的 VM 转储和下载 mysql
- javascript - 异步函数在另一个函数中调用时不等待 Promise