--- title: cov() function description: The `cov()` function computes the covariance between two streams by first joining the streams, then performing the covariance operation. aliases: - /influxdb/v2.0/reference/flux/functions/transformations/aggregates/cov - /influxdb/v2.0/reference/flux/functions/built-in/transformations/aggregates/cov/ - /influxdb/v2.0/reference/flux/stdlib/built-in/transformations/aggregates/cov/ - /influxdb/v2.0/reference/flux/stdlib/built-in/transformations/cov/ - /influxdb/cloud/reference/flux/stdlib/built-in/transformations/cov/ menu: flux_0_x_ref: name: cov parent: universe weight: 102 flux/v0.x/tags: [transformations] introduced: 0.7.0 --- The `cov()` function computes the covariance between two streams by first joining the streams, then performing the covariance operation. ```js cov(x: stream1, y: stream2, on: ["_time", "_field"], pearsonr: false) ``` ## Parameters ### x {data-type="stream of tables"} ({{< req >}}) First input stream used to calculate the covariance. Values in the `_value` columns must be [float values](/flux/v0.x/data-types/basic/float/). ### y {data-type="stream of tables"} ({{< req >}}) Second input stream used to calculate the covariance. Values in the `_value` columns must be [float values](/flux/v0.x/data-types/basic/float/). ### on {data-type="array of strings"} ({{< req >}}) List of columns to join on. ### pearsonr {data-type="bool"} Normalize results to the Pearson R coefficient. Default is `false`. ## Examples The following example uses [`generate.from()`](/flux/v0.x/stdlib/generate/from/) to generate sample data and show how `cov()` transforms data. ```js import "generate" stream1 = generate.from( count: 5, fn: (n) => n * n, start: 2021-01-01T00:00:00Z, stop: 2021-01-01T00:01:00Z, ) |> toFloat() stream2 = generate.from( count: 5, fn: (n) => n * n * n / 2, start: 2021-01-01T00:00:00Z, stop: 2021-01-01T00:01:00Z, ) |> toFloat() cov(x: stream1, y: stream2, on: ["_time"]) ``` {{< expand-wrapper >}} {{% expand "View input and output" %}} #### Input data {{< flex >}} {{% flex-content %}} ##### stream1 | _time | _value | | :------------------- | -----: | | 2021-01-01T00:00:00Z | 0.0 | | 2021-01-01T00:00:12Z | 1.0 | | 2021-01-01T00:00:24Z | 4.0 | | 2021-01-01T00:00:36Z | 9.0 | | 2021-01-01T00:00:48Z | 16.0 | {{% /flex-content %}} {{% flex-content %}} ##### stream2 | _time | _value | | :------------------- | -----: | | 2021-01-01T00:00:00Z | 0.0 | | 2021-01-01T00:00:12Z | 0.0 | | 2021-01-01T00:00:24Z | 4.0 | | 2021-01-01T00:00:36Z | 13.0 | | 2021-01-01T00:00:48Z | 32.0 | {{% /flex-content %}} {{< /flex >}} #### Output data | _value | | -----: | | 87.75 | {{% /expand %}} {{< /expand-wrapper >}}