How to create many variables from a dataset?

2 Ansichten (letzte 30 Tage)
Md. Golam Mostafa
Md. Golam Mostafa am 24 Sep. 2015
Bearbeitet: Stephen23 am 19 Jun. 2019
I have a dataset having 369148 rows organised in two columns. Every 26 rows of the first column contains a specified scale and the next 26 rows a different scale and so on. Second column contains measurement values at every specified scale. Therefore, total 14198 scales each having 26 measurement values making a grand total of measurement values in the second column is 369148. I want to create 14198 variables for every specified scales each having 26 measurement values. Can someone help me out.

Antworten (3)

Steven Lord
Steven Lord am 24 Sep. 2015
DON'T DO THIS. See question 1 in the Programming section of the FAQ for an explanation.
Reshape the original data set so that each of your "variables" is stored as a column of the data.
  1 Kommentar
Md. Golam Mostafa
Md. Golam Mostafa am 24 Sep. 2015
Sorry, I am a novice in using MATLAB. Can you explain me further?

Melden Sie sich an, um zu kommentieren.


Stephen23
Stephen23 am 25 Sep. 2015
Bearbeitet: Stephen23 am 19 Jun. 2019
  2 Kommentare
Md. Golam Mostafa
Md. Golam Mostafa am 25 Sep. 2015
Thank you very much for your enlightening comment! I shall read all these stuffs and follow best practices.
Stephen23
Stephen23 am 25 Sep. 2015
Bearbeitet: Stephen23 am 25 Sep. 2015
Enjoy reading! Basically you should keep your data together as much as possible, because this makes MATLAB fast, and is neater to code. Learn to use the dimensions of numeric arrays rather than splitting up your data:

Melden Sie sich an, um zu kommentieren.


Thorsten
Thorsten am 25 Sep. 2015
You can reshape your data
data = reshape(data, 26, 14198, 2);
You can even let Matlab figure out the elements along the 2nd dimension
data = reshape(data, 26, [], 2);

Kategorien

Mehr zu Matrices and Arrays finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by