Панды описывают все не работающие над DataFrame из raw sql - PullRequest
0 голосов
/ 25 мая 2018

Pandas dataframe description не работает должным образом для фрейма данных, сгенерированного мной с использованием raw sql.

В чем может быть проблема?Что-то мне не хватает?

Мой код:

import psycopg2
import pandas as pd
import numpy as np
credentials = {
    'database': '',
    'host': '',
    'user': '',
    'password': ''
}
print('Database connection started.')
conn = psycopg2.connect(**credentials)
cur = conn.cursor()
cur.execute('select * from userdetail')
df = pd.DataFrame(cur.fetchall())
fields = [x[0] for x in cur.description]
cur.close()
conn.close()
print("Database connection is closed now ")
df.columns = fields
df.describe() # works
df.describe(include='all') # doesn't work 

Полная трассировка стека ниже показывает следующее

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-1-10a5f5b12254> in <module>()
     20 print("Database connection is closed now ")
     21 df.columns = fields
---> 22 df.describe(include='all')

/usr/lib/python3.6/site-packages/pandas/core/generic.py in describe(self, percentiles, include, exclude)
   8568             data = self.select_dtypes(include=include, exclude=exclude)
   8569 
-> 8570         ldesc = [describe_1d(s) for _, s in data.iteritems()]
   8571         # set a convenient order for rows
   8572         names = []

/usr/lib/python3.6/site-packages/pandas/core/generic.py in <listcomp>(.0)
   8568             data = self.select_dtypes(include=include, exclude=exclude)
   8569 
-> 8570         ldesc = [describe_1d(s) for _, s in data.iteritems()]
   8571         # set a convenient order for rows
   8572         names = []

/usr/lib/python3.6/site-packages/pandas/core/generic.py in describe_1d(data)
   8551                 return describe_numeric_1d(data)
   8552             else:
-> 8553                 return describe_categorical_1d(data)
   8554 
   8555         if self.ndim == 1:

/usr/lib/python3.6/site-packages/pandas/core/generic.py in describe_categorical_1d(data)
   8525         def describe_categorical_1d(data):
   8526             names = ['count', 'unique']
-> 8527             objcounts = data.value_counts()
   8528             count_unique = len(objcounts[objcounts != 0])
   8529             result = [data.count(), count_unique]

/usr/lib/python3.6/site-packages/pandas/core/base.py in value_counts(self, normalize, sort, ascending, bins, dropna)
   1036         from pandas.core.algorithms import value_counts
   1037         result = value_counts(self, sort=sort, ascending=ascending,
-> 1038                               normalize=normalize, bins=bins, dropna=dropna)
   1039         return result
   1040 

/usr/lib/python3.6/site-packages/pandas/core/algorithms.py in value_counts(values, sort, ascending, normalize, bins, dropna)
    714 
    715         else:
--> 716             keys, counts = _value_counts_arraylike(values, dropna)
    717 
    718             if not isinstance(keys, Index):

/usr/lib/python3.6/site-packages/pandas/core/algorithms.py in _value_counts_arraylike(values, dropna)
    759         # TODO: handle uint8
    760         f = getattr(htable, "value_count_{dtype}".format(dtype=ndtype))
--> 761         keys, counts = f(values, dropna)
    762 
    763         mask = isna(values)

pandas/_libs/hashtable_func_helper.pxi in pandas._libs.hashtable.value_count_object()

pandas/_libs/hashtable_func_helper.pxi in pandas._libs.hashtable.value_count_object()

TypeError: unhashable type: 'list'

Я хочу увидеть описаниевесь кадр данных.Какую ошибку я получаю?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...