Skip to content

query_data_frame returns a list of data frames #589

@NicoCaldo

Description

@NicoCaldo

Specifications

  • Client Version: 1.36.1
  • InfluxDB Version: 2.71
  • Platform: Linux

Code sample to reproduce problem

Push a series of data and get it back via API query

for i in range(0,600000):
   temperatura += 1
   point = (
   	Point("Postazione1")
   	.tag("TipoTest", 1)
   	.field("Temperatura", temperatura))
   DBresponse = write_api.write(bucket=bucket, org=config.influx_org, record=point)
   time.sleep(.01)

Then get back the data with API AND THE QUERY BELOW

from(bucket: “Bed1”)
|> range(start: 2023-06-22T14:10:36.106Z, stop: 2023-06-22T14:29:12.154Z)
|> filter(fn: (r) => r[“_measurement”] == “Postazione1”)
|> filter(fn: (r) => r[“TipoTest”] == “1”)
|> filter(fn: (r) => r[“_field”] == “Temperatura”)
|> aggregateWindow(every: 1s, fn: mean, createEmpty: false)
|> yield(name: “mean”)
|> pivot(rowKey:[“_time”], columnKey: [“_field”], valueColumn: “_value”)
|> keep(columns:[“_time”, “Temperatura”])

client = InfluxDBClient(url=influx_url, token=influx_token, org=influx_org, debug=False)
df = client.query_api().query_data_frame(org=influx_org, query=query)

For some reason, df is a list of, in my case, 2 data frames so I can access df[0] and df[1]

Why I got 2 data frames and not one?

Expected behavior

Return a single data frame with all the data from my measure

Actual behavior

Return two data frames

Additional info

No response

Activity

powersj

powersj commented on Jun 30, 2023

@powersj
Contributor

Why I got 2 data frames and not one?

What are in those two data frames?

Your write function writes 1000 points, one at a time, does that take more than 1 second, such that your aggregation window covers 2 seconds?

NicoCaldo

NicoCaldo commented on Jul 3, 2023

@NicoCaldo
Author

Why I got 2 data frames and not one?

What are in those two data frames?

Your write function writes 1000 points, one at a time, does that take more than 1 second, such that your aggregation window covers 2 seconds?

I upload data continuously for a period of time of several minutes so, imagine the for loop for such period of time

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @powersj@NicoCaldo

        Issue actions

          query_data_frame returns a list of data frames · Issue #589 · influxdata/influxdb-client-python