TypeError: 'numpy.ndarray' object is not callable when using pandas .values()


I was testing a simple connection from an Amazon Redshift database to my local database using PostgreSQL. I wrote a query to obtain a table from the database, and converted that to a pandas DataFrame. Now, whenever I want to apply some functions on the DataFrame objects, I get the following error. I have tried several times to modify it, and looked up a lot of solutions, but can’t seem to work around with it.

cur.execute("QUERY for PostgreSQL")
rows = cur.fetchall()
print("Received as rows")
col_names = []
for i in cur.description:
df = pd.DataFrame.from_records(rows, columns = col_names)

TypeError                                 Traceback (most recent call last)
<ipython-input-16-8e9714b76ea1> in <module>()
---->  df.values()

TypeError: 'numpy.ndarray' object is not callable
Asked By: Aman Deep Middha



As @jezrael pointed out in the comments,
df.values is not a function, so you don’t need to call it. Just use df.values instead of df.values().

Answered By: MegaIng
Categories: questions Tags: , , ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.