How do I specify variable names in Matlab?

1 visualización (últimos 30 días)
Calum Crichton
Calum Crichton el 27 de En. de 2016
Comentada: Walter Roberson el 27 de En. de 2016
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 comentario
jgg
jgg el 27 de En. de 2016
Editada: jgg el 27 de En. de 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.

Iniciar sesión para comentar.

Respuesta aceptada

Walter Roberson
Walter Roberson el 27 de En. de 2016
[num, txt] = xlsread('YourXLSFile.xls');
Then the numbers are in num and the variable names are in txt.
  2 comentarios
Calum Crichton
Calum Crichton el 27 de En. de 2016
Editada: Calum Crichton el 27 de En. de 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 el 27 de En. de 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.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Data Import from MATLAB en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by