How do I specify variable names in Matlab?

1 view (last 30 days)
I have a portfolio of 10 stocks on an excel spreadsheet and have the names of the stocks in the first row. I can import this to Matlab by defining my data as a numeric matrix as opposed to a column vector. This allows me to calculate the variance-covariance matrix, which I was unable to do by importing the spreadsheet as a column vector.
The problem now is that I now cannot specify that my first row is variable names. Does anyone have any advice? I would be most grateful for your help. Thank you!
  1 Comment
jgg
jgg on 27 Jan 2016
Edited: jgg on 27 Jan 2016
Try using readtable instead of the method you're using to import the data. You can then use table2array to calculate your covariance matrix.
Basically, you'll save a lot of time and effort by using the right datatypes off the bat.

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 27 Jan 2016
[num, txt] = xlsread('YourXLSFile.xls');
Then the numbers are in num and the variable names are in txt.
  2 Comments
Calum Crichton
Calum Crichton on 27 Jan 2016
Edited: Calum Crichton on 27 Jan 2016
This worked. Thank you! The last thing I need help with is that after doing this how do I define an AssetList? E.g. when I use
p = Portfolio('AssetList', {'stockA','stockB'etc},'RiskFreeRate',CashRet);
it will not recognise the names of the assets
Walter Roberson
Walter Roberson on 27 Jan 2016
p = Portfolio('AssetList', txt(:).', 'RiskFreeRate', CashRet);
I do not know for sure that the cell array needs to be a row vector, but that is what I see in the examples.

Sign in to comment.

More Answers (0)

Categories

Find more on Data Import from MATLAB in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!