Trouble with a correlation analysis code

1 回表示 (過去 30 日間)
Alexandra Brian
Alexandra Brian 2017 年 1 月 28 日
編集済み: John Chilleri 2017 年 2 月 1 日
I'm writing a code to run a correlation analysis between two variables under certain conditions. I want to see if there is a correlation between the second column and the first if the second's value is greater than 0. I wrote the following code, but MATLAB continues to print the error, "Index exceeds matrix dimensions".
clear all
indicators = xlsread('largedata1.xlsx');
X = xlsread('largedata1.xlsx', 1, 'A:A');
rows = indicators(:,2)>0; %Logical vector with the rows which satisfy all conditions.
if any(rows) % True if there is at least 1 row which meats the condition.
md1 = fitlm(indicators(rows, [2]), X(rows)); % Fit with the rows which satisfy condition.
end
Can you please help?
Best, A
  2 件のコメント
Image Analyst
Image Analyst 2017 年 1 月 28 日
Can you attach 'largedata.xlsx' so people can try your code?
Alexandra Brian
Alexandra Brian 2017 年 1 月 29 日
I added it! Thanks for the suggestion.

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

採用された回答

John Chilleri
John Chilleri 2017 年 1 月 28 日
編集済み: John Chilleri 2017 年 2 月 1 日
Hello,
I downloaded your data and ran your code and it didn't encounter any errors for me (rows was a logical vector so rows==1 actually isn't needed like I suggested - I was testing with a double vector).
clear all
indicators = xlsread('largedata1.xlsx');
X = xlsread('largedata1.xlsx', 1, 'A:A');
rows = indicators(:,2)>0; %Logical vector with the rows which satisfy all conditions.
if any(rows) % True if there is at least 1 row which meats the condition.
md1 = fitlm(indicators(rows, [2]), X(rows)); % Fit with the rows which satisfy condition.
end
>> md1
md1 =
Linear regression model:
y ~ 1 + x1
Estimated Coefficients:
Estimate SE tStat pValue
________ _________ ______ __________
(Intercept) 0.056209 0.0049663 11.318 4.6459e-28
x1 0.18966 0.10075 1.8825 0.060056
Number of observations: 1022, Error degrees of freedom: 1020
Root Mean Squared Error: 0.12
R-squared: 0.00346, Adjusted R-Squared 0.00249
F-statistic vs. constant model: 3.54, p-value = 0.0601
  3 件のコメント
Alexandra Brian
Alexandra Brian 2017 年 1 月 31 日
Thanks John!
John Chilleri
John Chilleri 2017 年 2 月 1 日
Changed solution, but it doesn't help you it would seem.

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by