How to use grpstats to sum several variables
6 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Baynesy
il 24 Ago 2017
Risposto: Kristen Amaddio
il 29 Ago 2017
Hi,
I have a table of historic stock returns that I'm trying to perform some analysis on. The first variable is Stock, the second variable is Industry and 3:374 are the monthly returns.
I am looking to sum the monthly return by industry, i.e. for Materials to have the sum of the Materials stocks, which will result in a matrix/table of industries as variable 1 and the respective monthly summed returns for the other columns.
0 Commenti
Risposta accettata
Kristen Amaddio
il 29 Ago 2017
Given the following table, 'TStock', which is arranged as specified in your question:
TStock =
6×5 table
Stock Industry R1 R2 R3
_____ ___________ __ ___ ___
'S1' 'Materials' 71 176 128
'S2' 'Materials' 69 163 200
'S3' 'Oil' 64 131 100
'S4' 'Oil' 64 131 156
'S5' 'Oil' 67 133 145
'S6' 'Auto' 64 119 140
Now, when you use the 'grpstats' function, you will want to specify that you would like to group by the 'Industry' column. You can also specify that you would like to 'sum' the other columns. In order for this to work, you will need to omit the 'Stock' column in the calculation, as a sum cannot be performed on non-numeric data.
GStock = grpstats(TStock(:,2:end),'Industry','sum')
Which will deliver the following output, in which the first column is the name of each industry, and the remaining columns are the sums of the monthly returns for each industry:
GStock =
3×5 table
Industry GroupCount sum_R1 sum_R2 sum_R3
___________ __________ ______ ______ ______
Materials 'Materials' 2 140 339 328
Oil 'Oil' 3 195 395 401
Auto 'Auto' 1 64 119 140
0 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Repeated Measures and MANOVA in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!