Documentation

Calculate a weekly mean

This example uses NOAA water sample data.

This example calculates a temperature weekly mean and stores it in a separate bucket.

The sample query performs the following operations:

  • Uses filter() to select records with the average_temperature measurement.
  • Uses range() to define the start time.
  • Uses aggregateWindow() to group records by week and compute the mean.
  • Sends the weekly mean to a new bucket (weekly_means).
option task = {
  name: "weekly-means",
  every: 1w,
}

from(bucket: "noaa")
  |> filter(fn: (r) => r._measurement == "average_temperature")
  |> range(start: 2019-09-01T11:24:00Z)
  |> aggregateWindow(every:  1w, fn: mean)
  |> to(bucket: "weekly_means")

Example results

_start _stop _field _measurement location _value _time
2019-09-01T11:24:00Z 2020-10-19T20:39:49Z degrees average_temperature coyote_creek 80.31005917159763 2019-09-05T00:00:00Z
2019-09-01T11:24:00Z 2020-10-19T20:39:49Z degrees average_temperature coyote_creek 79.8422619047619 2019-09-12T00:00:00Z
2019-09-01T11:24:00Z 2020-10-19T20:39:49Z degrees average_temperature coyote_creek 79.82710622710623 2019-09-19T00:00:00Z
_start _stop _field _measurement location _value _time
2019-09-01T11:24:00Z 2020-10-19T20:39:49Z degrees average_temperature santa_monica 80.19952494061758 2019-09-05T00:00:00Z
2019-09-01T11:24:00Z 2020-10-19T20:39:49Z degrees average_temperature santa_monica 80.01964285714286 2019-09-12T00:00:00Z
2019-09-01T11:24:00Z 2020-10-19T20:39:49Z degrees average_temperature santa_monica 80.20451

Was this page helpful?

Thank you for your feedback!


The future of Flux

Flux is going into maintenance mode. You can continue using it as you currently are without any changes to your code.

Read more