Calculate a weekly mean

This page documents an earlier version of InfluxDB. InfluxDB v2.7 is the latest stable version. View this page in the v2.7 documentation.

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).
  1. option task = {
  2. name: "weekly-means",
  3. every: 1w,
  4. }
  5. from(bucket: "noaa")
  6. |> filter(fn: (r) => r._measurement == "average_temperature")
  7. |> range(start: 2019-09-01T11:24:00Z)
  8. |> aggregateWindow(every: 1w, fn: mean)
  9. |> to(bucket: "weekly_means")

Example results

_start_stop_field_measurementlocation_value_time
2019-09-01T11:24:00Z2020-10-19T20:39:49Zdegreesaverage_temperaturecoyote_creek80.310059171597632019-09-05T00:00:00Z
2019-09-01T11:24:00Z2020-10-19T20:39:49Zdegreesaverage_temperaturecoyote_creek79.84226190476192019-09-12T00:00:00Z
2019-09-01T11:24:00Z2020-10-19T20:39:49Zdegreesaverage_temperaturecoyote_creek79.827106227106232019-09-19T00:00:00Z
_start_stop_field_measurementlocation_value_time
2019-09-01T11:24:00Z2020-10-19T20:39:49Zdegreesaverage_temperaturesanta_monica80.199524940617582019-09-05T00:00:00Z
2019-09-01T11:24:00Z2020-10-19T20:39:49Zdegreesaverage_temperaturesanta_monica80.019642857142862019-09-12T00:00:00Z
2019-09-01T11:24:00Z2020-10-19T20:39:49Zdegreesaverage_temperaturesanta_monica80.20451

tasks