pandas.DataFrame.memory_usage#
- DataFrame.memory_usage(index=True, глубокий=False)[источник]#
Возвращает использование памяти каждого столбца в байтах.
Использование памяти может дополнительно включать вклад индекса и элементов object тип данных.
Это значение отображается в DataFrame.info по умолчанию. Это можно отключить, установив
pandas.options.display.memory_usageв False.- Параметры:
- indexbool, по умолчанию True
Указывает, включать ли использование памяти индекса DataFrame в возвращаемый Series. Если
index=True, использование памяти индексом является первым элементом в выводе.- глубокийbool, по умолчанию False
Если True, глубоко анализировать данные путем опроса object типы данных для потребления памяти на системном уровне и включают их в возвращаемые значения.
- Возвращает:
- Series
Series, чей индекс - исходные имена столбцов, а значения - использование памяти каждого столбца в байтах.
Смотрите также
numpy.ndarray.nbytesОбщее количество байт, потребляемых элементами ndarray.
Series.memory_usageБайты, потребляемые Series.
CategoricalЭффективный по памяти массив для строковых значений с множеством повторяющихся значений.
DataFrame.infoКраткое описание DataFrame.
Примечания
См. Часто задаваемые вопросы для получения дополнительной информации.
Примеры
>>> dtypes = ['int64', 'float64', 'complex128', 'object', 'bool'] >>> data = dict([(t, np.ones(shape=5000, dtype=int).astype(t)) ... for t in dtypes]) >>> df = pd.DataFrame(data) >>> df.head() int64 float64 complex128 object bool 0 1 1.0 1.0+0.0j 1 True 1 1 1.0 1.0+0.0j 1 True 2 1 1.0 1.0+0.0j 1 True 3 1 1.0 1.0+0.0j 1 True 4 1 1.0 1.0+0.0j 1 True
>>> df.memory_usage() Index 128 int64 40000 float64 40000 complex128 80000 object 40000 bool 5000 dtype: int64
>>> df.memory_usage(index=False) int64 40000 float64 40000 complex128 80000 object 40000 bool 5000 dtype: int64
Объем памяти object столбцы типа dtype игнорируются по умолчанию:
>>> df.memory_usage(deep=True) Index 128 int64 40000 float64 40000 complex128 80000 object 180000 bool 5000 dtype: int64
Используйте Categorical для эффективного хранения столбца с типом данных object, содержащего много повторяющихся значений.
>>> df['object'].astype('category').memory_usage(deep=True) 5244