Spec-Zone.ru › pandas 0.23

pandas.DataFrame.info

DataFrame.info(verbose=None, buf=None, max_cols=None, memory_usage=None, null_counts=None) [source]

Выводит краткое описание DataFrame.

Этот метод выводит информацию о DataFrame, включая тип индекса и типов столбцов, количество ненулевых значений и использование памяти.

Параметры:

verbose : bool, необязательно

Выводить полное описание. По умолчанию используется значение из pandas.options.display.max_info_columns.

buf : буфер для записи, по умолчанию sys.stdout

Куда отправлять вывод. По умолчанию вывод выводится в sys.stdout. Передайте буфер для записи, если вам нужно дополнительно обработать вывод.

max_cols : int, необязательно

В какой момент переключаться с подробного на усеченный вывод. Если DataFrame имеет более чем max_cols столбцов, используется усеченный вывод. По умолчанию используется значение из pandas.options.display.max_info_columns.

memory_usage : bool, str, необязательно

Указывает, следует ли отображать общее использование памяти элементами DataFrame (включая индекс). По умолчанию это соответствует значению pandas.options.display.memory_usage.

True всегда показывает использование памяти. False никогда не показывает использование памяти. Значение «deep» эквивалентно «True с глубоким анализом». Использование памяти отображается в читаемых единицах (представление в двоичной системе). Без глубокого анализа производится оценка использования памяти на основе типа столбца и количества строк, предполагая, что значения потребляют одинаковое количество памяти для соответствующих типов данных. С глубоким анализом потребления памяти выполняется реальный расчет использования памяти за счет вычислительных ресурсов.

null_counts : bool, необязательно

Показывать ли количество ненулевых значений. По умолчанию отображается только если кадр меньше pandas.options.display.max_info_rows и pandas.options.display.max_info_columns. Значение True всегда показывает подсчеты, а False никогда.

Возвращает:

None

Этот метод выводит сводку DataFrame и возвращает None.

См. также

DataFrame.describe
Генерировать описательные статистики столбцов DataFrame.
DataFrame.memory_usage
Использование памяти столбцами DataFrame.

Примеры

>>> int_values = [1, 2, 3, 4, 5]
>>> text_values = ['alpha', 'beta', 'gamma', 'delta', 'epsilon']
>>> float_values = [0.0, 0.25, 0.5, 0.75, 1.0]
>>> df = pd.DataFrame({"int_col": int_values, "text_col": text_values,
...                   "float_col": float_values})
>>> df
   int_col text_col  float_col
0        1    alpha       0.00
1        2     beta       0.25
2        3    gamma       0.50
3        4    delta       0.75
4        5  epsilon       1.00

Выводит информацию обо всех столбцах:

>>> df.info(verbose=True)
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 5 entries, 0 to 4
Data columns (total 3 columns):
int_col      5 non-null int64
text_col     5 non-null object
float_col    5 non-null float64
dtypes: float64(1), int64(1), object(1)
memory usage: 200.0+ bytes

Выводит сводку по количеству столбцов и их типам, но не по каждой колонке:

>>> df.info(verbose=False)
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 5 entries, 0 to 4
Columns: 3 entries, int_col to float_col
dtypes: float64(1), int64(1), object(1)
memory usage: 200.0+ bytes

Перенаправьте вывод DataFrame.info в буфер вместо sys.stdout, получите содержимое буфера и запишите в текстовый файл:

>>> import io
>>> buffer = io.StringIO()
>>> df.info(buf=buffer)
>>> s = buffer.getvalue()
>>> with open("df_info.txt", "w", encoding="utf-8") as f:
...     f.write(s)
260

Параметр memory_usage позволяет включить режим глубокого анализа, особенно полезный для больших DataFrame и настройки оптимизации памяти:

>>> random_strings_array = np.random.choice(['a', 'b', 'c'], 10 ** 6)
>>> df = pd.DataFrame({
...     'column_1': np.random.choice(['a', 'b', 'c'], 10 ** 6),
...     'column_2': np.random.choice(['a', 'b', 'c'], 10 ** 6),
...     'column_3': np.random.choice(['a', 'b', 'c'], 10 ** 6)
... })
>>> df.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 1000000 entries, 0 to 999999
Data columns (total 3 columns):
column_1    1000000 non-null object
column_2    1000000 non-null object
column_3    1000000 non-null object
dtypes: object(3)
memory usage: 22.9+ MB
>>> df.info(memory_usage='deep')
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 1000000 entries, 0 to 999999
Data columns (total 3 columns):
column_1    1000000 non-null object
column_2    1000000 non-null object
column_3    1000000 non-null object
dtypes: object(3)
memory usage: 188.8 MB

© 2008–2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/0.23.4/generated/pandas.DataFrame.info.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API