フィルターのクリア

Vector size error or Polyfit

1 回表示 (過去 30 日間)
Don
Don 2015 年 10 月 24 日
編集済み: Don 2015 年 10 月 26 日
Am trying to detrend some ECG data using polyfit(). Error message is that X and Y vectors not the same size. But they are, I think:
Workspace:
ChannelFirst 1x92672 double t 92672x1 double
Here’s the code:
t = (1:length(ChannelFirst))';
subplot(2,1,1) plot(t,ChannelFirst), grid title 'ECG Signals with Trends', ylabel 'Voltage (mV)'
subplot(2,1,2) plot(t,ChannelFirst), grid xlabel Sample, ylabel 'Voltage (mV)'
Code works fine to this point. Plot looks correct. However,
opol = 6;
[p,s,mu] = polyfit(t,ChannelFirst,opol);
Error using polyfit (line 47) X and Y vectors must be the same size.
t and ChannelFirst appear to be the same size
can someone please help ? are t and Channelfirst not the X and Y vectors for polyfit?

採用された回答

Walter Roberson
Walter Roberson 2015 年 10 月 24 日
[p,s,mu] = polyfit(t.',ChannelFirst,opol);
or
[p,s,mu] = polyfit(t,ChannelFirst.',opol);
One of your vectors is a row vector and the other is a column vector. You need to have them the same orientation.
  1 件のコメント
Don
Don 2015 年 10 月 26 日
編集済み: Don 2015 年 10 月 26 日
Thank you very much. I could not find that clue in Polyfit() documentation, so took the tutorial code a face value (t' used there) When changed to t it works like a charm. Karma!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMultichannel Audio Input and Output についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by