Python将SQL数据分组
我过去常常从CSV文件中读取数据,而我只是将所有CSV数据导入SQL数据库,但我很难使用Python从SQL中提取数据 我的read CSV原始代码如下:Python将SQL数据分组,python,pandas,Python,Pandas,我过去常常从CSV文件中读取数据,而我只是将所有CSV数据导入SQL数据库,但我很难使用Python从SQL中提取数据 我的read CSV原始代码如下: import pandas as pd stock_data = pd.read_csv(filepath_or_buffer='stock_data_w.csv', parse_dates=[u'date'], encoding='gbk') stock_data[u'change_weekly'] = stock_data.groupby
import pandas as pd
stock_data = pd.read_csv(filepath_or_buffer='stock_data_w.csv', parse_dates=[u'date'], encoding='gbk')
stock_data[u'change_weekly'] = stock_data.groupby(u'code')[u'change'].shift(-1)
现在我想从SQL中读取数据,这是我的代码,但它不起作用,我不确定如何对其进行排序:
import pandas as pd
import MySQLdb
db = MySQLdb.connect(host='localhost', user='root', passwd='232323', db='test', port=3306)
cur = db.cursor()
cur.execute("SELECT * FROM stock_data_w")
stock_data = pd.DataFrame(data=cur.fetchall(), columns=[i[0] for i in cur.description])
stock_data[u'change_weekly'] = stock_data.groupby(u'code')[u'change'].shift(-1)
错误是:“raise PandasError('DataFrame构造函数未正确调用!')pandas.core.common.PandasError:DataFrame构造函数未正确调用!”
使用下面的方法将光标对象转换为板条箱数据框
stock_data = pd.DataFrame(data=cursor.fetchall(), index=None,
columns=cursor.keys())
print stock_data
在mysqldb中,columns=[i[0]表示游标中的i.description]
或
与炼金术建立联系并使用
stock_data = pd.read_sql("SELECT * from stock_data_w",
con= cnx,parse_dates=['date'])
我不确定pandas
read\u sql()
中是否支持mysql.connector
。您可以试一试,让我们知道:)嗨,樵夫,非常感谢您的回复!我尝试了两种方法,第一种方法回答了AttributeError:“MySQLCursor”对象没有属性“keys”。第二个也不起作用。我还安装了MySQLdb,请问如何在MySQLdb下分组数据?谢谢我确信mysqldb游标将有键。您好,在mysqldb中使用columns=[i[0]表示游标中的i。说明]
谢谢,谢谢,我通过导入mysqldb更改了代码。Columns现在可以了,但是parse_dates有一个问题:(…我已经更新了帖子,你可以在上面看到我的代码和错误。请删除parse_dates=['date']
它将推断为date columnDataFrame现在可用。转到IDE并使用print stock_data.head()
查看数据和股票数据。列
了解您的数据非常感谢!最后,我在您的帮助下进行了整理。