Skip to content

query_data_frame returns a list of data frames #589

Open
@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

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

    Issue actions