How I can substract vectors with different length?

조회 수: 5 (최근 30일)
gjashta
gjashta 2019년 5월 5일
댓글: dpb 2019년 5월 5일
If d is a vector containg the data for each day of march for 13 years. So, d is a vector with 403 values.
Then mu and sd are the mean and standard deviation of march for each year. mu and sd are vectors with 13 values.
I need to calculate first d-mu, and then d-mu/sd. How to do it in matlab?
  댓글 수: 3
gjashta
gjashta 2019년 5월 5일
편집: gjashta 2019년 5월 5일
d is the daily demand and mu is the mean for each month.
Yes,
Adam Danz
Adam Danz 2019년 5월 5일
ah.... right. I see now. I thought maybe you were computing delta-mu.

댓글을 달려면 로그인하십시오.

채택된 답변

dpb
dpb 2019년 5월 5일
편집: dpb 2019년 5월 5일
I presume you mean to standardize the monthly data by year...presuming you have a date variable along with the observation, then findgroups and splitapply will do the job; otherwise the "dead-ahead" solution is to just repelem the values of the mean, sd array...
z=(d-repelem(mu,31))./repelem(sd,31);
where I've used mu, sd for mean, std dev instead of ill-chosen x, y
ADDENDUM
Would have been easier to have been told what things were from the git-go instead of having to download the data...but
d.StdDemand=(d.Demand-repelem(mu.Demand,31))./repelem(sd.Demand,31);
dereferences all the timetables.
In general, since you'll undoubtedly be wanting to do this for other months, replace the hardcoded 31 with a variable for the proper number of days in month (also remembering to account for leap years for February).
  댓글 수: 7
gjashta
gjashta 2019년 5월 5일
Thank you! Yeah, I plan to do this for other months, as well.
I have attached the daily demand of 13 years and the monthly mean and standard deviation.
Can you help me with a simple code that can standardize the monthly data by year without repeating the same code for each month (as you said I have to take into account the leap years for February).
dpb
dpb 2019년 5월 5일
And, I just showed code that works on that data here in the amended Answer.
As for leap years and days therein, eomday() is leapyear aware so using it instead of hardcoded days would be one way.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Dates and Time에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by