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 following query:

  • Uses filter() to filter the average_temperature measurement.
  • Uses range() to define a time range.
  • Uses aggregateWindow() to group average temperature 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_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

Set your InfluxDB URL

Upgrade to InfluxDB Cloud or InfluxDB 2.0!

InfluxDB Cloud and InfluxDB OSS 2.0 ready for production.