【发布时间】:2019-10-22 14:32:24
【问题描述】:
我编写了一个脚本,它首先运行 SQL 查询以从 Redshift(通过 Databricks)获取数据。然后,我想在熊猫数据框中显示它。问题是列的名称以某种方式被删除/不显示。为什么?
#SQL Query
query = """
SELECT * FROM table1 limit 1;
"""
# Execute the query
try:
cursor.execute(query)
except OperationalError as msg:
print ("Command skipped: ")
#Fetch all rows from the result
rows = cursor.fetchall()
# Convert into a Pandas Dataframe
df = pd.DataFrame( [[ij for ij in i] for i in rows] )
df.head()
如您所见,列名变成了数字(黄色)。目的是显示列名 1:Customer_id,列名 2:购买,列名 3:Product_id 等。
感谢您的帮助。谢谢!
【问题讨论】:
-
使用
pd.read_sql() -
您没有将列名传递给 pd.DataFrame,因此 pandas 分配了从 0 开始的默认列名
-
@Vaishali 哦,太好了,我该如何通过这些?
-
pd.DataFrame([[ij for ij in i] for i in rows] , columns = [...])
-
pd.read_sql() 神奇!谢谢
标签: python python-3.x pandas databricks