@grant1,
You could use a drop()
function to drop actual
and setpoint
.
import "math"
from(bucket: "bucket2")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "measurement2")
|> filter(fn: (r) => r["EquipType"] == "generator")
|> filter(fn: (r) => r["MeasType"] == "actual" or r["MeasType"] == "setpoint")
|> filter(fn: (r) => r["_field"] == "temperature")
|> filter(fn: (r) => r["EquipNumber"] == "302")
|> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
|> pivot(rowKey:["_time"], columnKey: ["MeasType"], valueColumn: "_value")
|> map(fn: (r) => ({ r with difference: math.abs(x: r.setpoint - r.actual)}))
|> drop(columns: ["actual", "setpoint"])
|> yield(name: "difference")