How can I apply a function to some nearby cells of one column and store the results in a new column which we easily do in Excel as shown in the figure ?

1 view (last 30 days)
  2 Comments
Lei Hou
Lei Hou on 18 Oct 2021
Hi Manjula,
In MATLAB table, all the columns ( we call them variables) should be in the same height. In your picture, what is your expected value of B1, B2, B4 and B5? Are you OK with saving the new column in another table?
Thanks,
Lei
Manjula Wickramathilaka
Manjula Wickramathilaka on 18 Oct 2021
Thank you for attending to this question. I want to copy the same formula from B3 until B8. It's OK if the output can be taken to another table or a separate array. I know that specific functions are there for the 'moving mean', 'moving average', etc but I want to know whether there is a general way to apply a function to a moving window

Sign in to comment.

Answers (1)

Arun
Arun on 22 Feb 2024
Hi Manjula,
I understand that you wish to apply a function over a column in a moving window order.
MATLAB provides a function, “tA = matlab.tall.movingWindow(fcn,window,tX), that applies the function “fcn once per window as the window moves over the first dimension of “tX. The output “tA is the vertical concatenation of the results of applying “fcn to each window.
For more information regarding “matlab.tall.movingWindow, please refer the documentation link: https://www.mathworks.com/help/matlab/ref/matlab.tall.movingwindow.html
HTH

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!