Экспорт измерений InfluxDB в Pandas Dataframe с тегами в качестве собственных столбцов - PullRequest
0 голосов
/ 28 мая 2020

Я новичок в Python, и у меня есть запрос InfluxDB, который я хотел бы установить в pandas фрейм данных. Однако вывод, похоже, включает только измерения, но не значения тегов.

Мой код показан ниже:

import pandas as pd
from influxdb import InfluxDBClient

def main():

    host = 'localhost'
    port = 8086
    user = 'abc'
    password = 'xyz'
    dbname = 'rain_rate'


    client = InfluxDBClient(host, port, user, password, dbname)
    print("Influx Connected")

    q = 'SELECT * FROM "rain_rate" WHERE time > now() - 24h GROUP BY "location", "site_id";'

    df = pd.DataFrame(client.query(q).get_points())
    print(df)


if __name__ == '__main__':
    main() 

Когда я распечатываю фрейм данных, на выходе отображаются только измерения и точки данных в столбцах, но значения тегов «location» и «site_id» не отображаются. в фрейме данных.

Как я могу получить 2 значения тега, которые будут в результатах фрейма данных как их собственные столбцы вместе с измерениями?

Заранее спасибо!

1 Ответ

0 голосов
/ 03 июня 2020

Заключите запрос в select * from и сделайте ваш фактический запрос как подзапрос.

Попробуйте это

'SELECT * FROM (SELECT * FROM "rain_rate" WHERE time > now() - 24h GROUP BY "location", "site_id");'

Когда вы это сделаете, внешний запрос преобразует все теги в поля , поэтому он будет преобразован в столбцы в фрейме данных

...