import pymysql
pymysql.install_as_MySQLdb()
import pandas as pd
class Data():
def connect(self):
self.db = pymysql.Connect("192.168.226.234", "mywind", "123456", "pems")
self.cursor = self.db.cursor()
# print("连接数据库成功")
def getModelData(self):
self.connect()
self.cursor.execute(
"SELECT time, volum FROM data_load")
data = self.cursor.fetchall()
self.db.close()
data = self.prefixData(data)
return data
def getPredictData(self, startTime, endTime):
self.connect()
sql = "SELECT time, volum FROM data_load where time between '" + startTime + "' and '" + endTime + "'"
self.cursor.execute(sql)
data = self.cursor.fetchall()
self.db.close()
data = self.prefixData(data)
return data
def savePredictData(self, time, value):
# self.connect()
sql = ''
id = self.countTime(time)
if self.countTime(time) > 0:
sql = "UPDATE data_load set predict = " + str(value) + " where id=" + str(id)
else:
sql = "INSERT INTO data_load(time, predict) VALUES ('" + time + "'," + str(value) + ")"
print(sql)
self.cursor.execute(sql)
self.db.commit()
self.db.close()
# sql = """ insert into %s %s values %s """ % (dbName, dbField, data_values)
def countTime(self, time):
self.connect()
sql = "SELECT id FROM pems.data_load where time = '" + time + "'"
self.cursor.execute(sql)
data = self.cursor.fetchone()[0]
print(data)
return data
def prefixData(self, data):
ret = [];
for i in range(len(data)):
ret.append(data[i][1])
return ret;
TypeError: __init__() takes 1 positional argument but 5 were given 这个错误如何纠正
该代码定义了一个名为Data的类,用于连接到MySQL数据库并执行查询。主要功能包括获取模型数据、预测数据,保存预测结果以及计算时间戳的出现次数。类中使用pymysql库进行数据库交互,并实现了数据预处理的方法。
5850

被折叠的 条评论
为什么被折叠?



