Rate of change calculation


I've got a dataset (column) which is basic time-series dataset containing the volume of fluid in a vessel with observations every 5 minutes. I want to create a calculation to determine the average per-day rate of change of fluid in the vessel. I've uploaded an example of the raw data The basic idea would be:


Rate of Change = (Average Fluid Volume on Day N) - (Average Fluid Volume on Day N-1)


Thoughts on how I could Beast Mode this?


  • Valiant

    So I believe the only way you could pull this off would be to create a SQL transform to first group your data and add a previous day volume column.


    You could accomplish this with the following two transforms:

    SELECT CAST(`Timestamp` AS DATE) AS 'Day', AVG(`Fluid Volume`) AS 'Avg Volume'
    FROm testingdata
    GROUP BY CAST(`Timestamp` AS DATE)

    And then:

    SELECT CAST(a.`Timestamp` AS DATE) AS 'Day', AVG(a.`Fluid Volume`) AS 'Avg Volume', (SELECT b.`Avg Volume` FROM transform_data_1 as b WHERE b.`Day` = DATE_SUB(CAST(a.`Timestamp` AS DATE), INTERVAL 1 DAY) ) AS 'Previous Volume'
    FROm testingdata AS a
    GROUP BY CAST(a.`Timestamp` AS DATE)

    That will give you Day, Avg Volume, Previous Volume.


    From there you can subtract Avg V- Prev V and then create your average rate of change Beast Mode.


    Let me know if you have any other questions,



    **Please mark "Accept as Solution" if this post solves your problem
    **Say "Thanks" by clicking the "heart" in the post that helped you.

This discussion has been closed.