counting across complementary columns
2 views (last 30 days)
Show older comments
I wrote a long function (attached so that you know it is not a post by a lazy student seeking an answer for his assignment) nd then I sensed that what I wrote is long and rediculous and coule be full of mistakes (still incomplete). I hope you can help
In short I have column A(daily date numbersover 4 years) and 5 columns that i want to count. Column B is always 1 and it is equals to the sum of rows in columns C,D,E, and F. So, Column C, D, E,F are complementary: if row C=1,rows D,E,and F must be zeros;if row D=1,rows C,E,and F must be zeros;if row E=1,rows C,D,and F must be zeros;and finally if row F=1,rows C,D,and E must be zeros;
How can do the counting in two ways
- count the number of observations in columns B,C,D,E, and F for every day of every month of every year
- count the number of observations in columns B,C,D,E, and F for every month of every year
I feel that it is much easier to compute than reporting a long fucntion with loops. I appreciate any assistance.
2 Comments
Rik
on 17 Mar 2019
Since you have only ones and zeros in the B-F columns, you can use them as logical indices to the A column and the do the analyses you need on a vector with only observation dates.
You might also need a function like accumarray, but I don't understand what you mean well enough to give a definitive answer on that account.
Guillaume
on 17 Mar 2019
Edited: Guillaume
on 18 Mar 2019
Please give an example of input and desired output, preferably using valid matlab syntax as comments to the question.
If you post your comments as answers, it looks like 2 people have already answered your question, so answerers may not even look at the question.
Answers (1)
See Also
Categories
Find more on Time Series Objects 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!