【发布时间】:2018-03-01 05:30:09
【问题描述】:
我正在测试从 Amazon Redshift 数据库到 我使用 PostgreSQL 的本地数据库。我写了一个查询来获取一个表 从数据库中,并将其转换为 Pandas 数据框。现在, 每当我想在数据框对象上应用一些函数时,我 得到以下错误。我已经尝试过多次修改它,并且 查找了很多解决方案,但似乎无法解决。
cur.execute("QUERY for PostgreSQL")
rows = cur.fetchall()
print("Received as rows")
col_names = []
for i in cur.description:
col_names.append(i[0])
df = pd.DataFrame.from_records(rows, columns = col_names)
df.values()
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-16-8e9714b76ea1> in <module>()
----> df.values()
TypeError: 'numpy.ndarray' object is not callable
【问题讨论】:
-
移除
(),只需要df.values -
@jezrael 感谢您的及时回复!如何在我的数据框对象上使用任何其他功能?例如,我想要第三列的聚合,但是当我使用 .mean 或 .aggregate 时,它不会这样做。此外,当我执行 .describe() 时,它使用第一列,而不是第三列。我该如何处理?
-
我认为它有点宽泛,最好是创建一些数据样本和所需的输出。
-
但我相信docs 应该会有所帮助。
-
@jezrael 但它没有谈论我如何只使用其中一列来使 .describe() 工作或 mean() 在那一列上工作。
标签: python postgresql pandas numpy amazon-redshift