gpt4 book ai didi

python-3.x - 将带有标签的 pandas DF 写入 influxdb

转载 作者:行者123 更新时间:2023-12-03 12:20:56 25 4
gpt4 key购买 nike

我有这个 [3526 行 x 5 列] DF,其中 col0 是时间,col1-col3 是标签, col4 是我的值。

                    0             1                  2         3      4
0 2017-09-29 22:41:51 10.2.95.5 C1195_LF470_SARF 0.0.1.1 11993
1 2017-09-29 22:41:37 10.2.52.7 CF643_RCZ70_SARM 0.0.1.16 12102
2 2017-09-29 22:41:39 10.2.102.7 C1345_BQS70_SARF 0.0.1.17 18173
3 2017-09-29 22:41:41 10.2.23.212 CN165_FS470_SAR8 0.0.0.7 23525
4 2017-09-29 22:41:38 10.2.96.4 CF832_UY570_SARM 0.0.1.4 6162

因此,我想将该 DF 写入 influxdb。我会做...

timeValues  = df[ ['col0','col4'] ]
tags = { 'col1': df[['col1']], 'col2': df[['col2']], 'col3':df[['col3']] }

dbConnDF = DataFrameClient(dbAddress, dbPort, dbUser, dbPassword, dbName)
dbConnDF.write_points(dbName, tbName, timeValues, tags = tags)

在那之后,我得到了错误

Must be DataFrame with Datetime or PeriodIndex

但是,如果我使用这个逐行插入...

dbConnQRY = InfluxDBClient(dbAddress, dbPort, dbUser, dbPassword, dbName)
dbConnQRY.write_points(bodyDB)

哪里:

bodyDB = [{
"measurement": tbName,
"tags":
{
"col1": col1,
"col2": col2,
"col3": col3
},
"time": col0,
"fields":
{
"col4": col4
}
}]

...我完全没有错误。因此,当我尝试一次插入整个 DF 时,问题就出现了。

我如何告诉 influxdb col0 是我的索引以避免错误?

谢谢!

最佳答案

Create an index column for dataframe
timeValues = df[ ['col4'] ]
timeValues.index = df[ ['col0'] ]

其次是

dbConnDF = DataFrameClient(dbAddress, dbPort, dbUser, dbPassword, dbName)
dbConnDF.write_points(dbName, tbName, timeValues, tags = tags)

这应该可以解决索引问题。

关于python-3.x - 将带有标签的 pandas DF 写入 influxdb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46506670/

25 4 0