Navne på variable i Matlab workspace

Svar på indlæg
Af Maria Juul Hansen @ 28 apr. 2016 11:50

Jeg er ved at være lidt træt af at skulle huske (eller kigge på mine noter i min kode at at huske), hvad en given kolonne i en matrix er for en variabel. Er der nogen måde, hvorved jeg kan tilføje en titel til en kolonne, så der ikke bare står 1,2,...?  

Maria

Svar og citér
Maria Juul Hansen

Maria Juul Hansen

Antal indlæg: 35
Medlem siden: d. 01. march 2011
Af Goutham Jørgen Surendran @ 14 maj 2016 19:07

Hej Maria

Man kan lave matricen om til et 'dataset'-objekt. Men den type objekter kan give problemer, når man skal arbejder videre med den (correct me, if I'm wrong)

Alternativt, lav en tilhørende struct, der indeholder de relevante oplysninger. Dermed er matricen stadig en "standard" Matlab matrice. Her er et meget lille eksempel til at danne en struct, og hvordan det kan bruges:

%Dan en matrice med tilfældige tal
matrix=rand(3);

%Navngiv række og kolonner, som gemmes i en struct
matrix_info = struct('r', struct('GDP', 1, 'interest_rate', 2, 'inflation', 3),'c', struct('Y2001', 1, 'Y2002', 2, 'Y2003', 3));

%Output rækkenavne
matrix_info.r

%Output kolonnenavne
matrix_info.c

%Træk GDP og interest rate i 2001 and 2003
%%1. metode
matrix([1 2],[1 3])

%%2. method
matrix([matrix_info.r.GDP matrix_info.r.interest_rate],[matrix_info.c.Y2001, matrix_info.c.Y2003])

Koden som er .txt. er her 
Håber det kan være til hjælp

mvh Jørgen

Svar og citér
Goutham Jørgen Surendran

Goutham Jørgen Surendran

Antal indlæg: 3
Medlem siden: d. 13. september 2010
Af Maria Juul Hansen @ 15 maj 2016 14:44

Mange tak for det, Jørgen! Det lyder som en måde, det kunne lade sig gøre på :)

Vh. Maria

Svar og citér
Maria Juul Hansen

Maria Juul Hansen

Antal indlæg: 35
Medlem siden: d. 01. march 2011