Как pandas.crosstab, так и сводная таблица Pandas, похоже, обеспечивают ту же функциональность. Есть ли различия?Как кросс-таблица Pandas отличается от Pandas pivot_table?
ответ
Это то же самое, если в pivot_table
использовании aggfunc=len
и fill_value=0
:
pd.crosstab(df['Col X'], df['Col Y'])
pd.pivot_table(df, index=['Col X'], columns=['Col Y'], aggfunc=len, fill_value=0)
EDIT: Существует больше разница:
По умолчанию aggfunc
разные: pivot_table
- np.mean
, crosstab
- len
.
Параметр margins_name
только в pivot_table
.
В pivot_table
вы можете использовать Grouper
для index
и columns
ключевых слов.
Я думаю, что если вам нужна просто таблица частот, crosstab
функции лучше.
Основное различие между двумя: pivot_table
ожидает, что ваши входные данные уже будут DataFrame; вы передаете DataFrame на pivot_table
и укажите index
/columns
/values
, передав имена столбцов в виде строк. С cross_tab
вам не обязательно нужно, чтобы DataFrame проходил, поскольку вы просто передаете объекты, похожие на массив, для index
/columns
/values
.
Глядя на source code для crosstab
, она по существу принимает массив подобных объектов вы проходите, создает DataFrame, затем вызывает pivot_table
соответствующие меры.
В общем случае используйте pivot_table
, если у вас уже есть DataFrame, поэтому у вас нет дополнительных накладных расходов для создания того же DataFrame. Если вы начинаете с объектов, подобных массиву, и связаны только с поворотными данными, используйте crosstab
. В большинстве случаев я не думаю, что действительно будет иметь значение, какую функцию вы решите использовать.
- 1. pandas select подмножество pivot_table
- 2. pandas pivot_table percentile/quantile
- 3. Pandas NaN введено pivot_table
- 4. Pandas pivot_table percentile
- 5. Pandas pivot_table на дату
- 6. pandas pivot_table без группировки
- 7. Разбитые столбцы в pivot_table, pandas
- 8. Упорядочение столбцов в pivot_table, Pandas
- 9. Pandas pivot_table не соответствует значениям
- 10. Plot python pandas pivot_table с ошибками
- 11. Python, построение pivot_table Pandas из длинных данных
- 12. Pandas pivot_table, сортировать значения по столбцам
- 13. pandas pivot_table apply aggfunc last instance
- 14. Python Pandas pivot_table отсутствует столбец после поворота
- 15. Pandas: pivot_table уникальный счет возвращает count
- 16. Данные панели в Pandas, 'pivot_table', в частности
- 17. Pandas Pivot_table ошибка при выполнении -Type error
- 18. Pandas: почему pandas.Series.std() отличается от numpy.std()
- 19. Pandas: почему pandas.Series.std() сильно отличается от numpy.std()
- 20. как удалить '[] -' от pandas
- 21. Создайте новый столбец на pandas pivot_table с помощью multiindex
- 22. Pandas pivot_table с использованием заданного списка индексов и столбцов
- 23. python pandas: pivot_table бесшумно сбрасывает индексы с nans
- 24. Редактировать/объединить столбцы в рамке данных Pandas после использования pivot_table
- 25. ValueError: отрицательные размеры не допускаются с использованием pandas pivot_table
- 26. Pandas: рассчитать перекрытие с помощью pivot_table или кросс-таблицы
- 27. Почему индекс Pandas DataFrame Slice отличается от его формы?
- 28. Индекс Pandas от объектов
- 29. Смарт, отличный от pandas
- 30. Ключевая ошибка от Pandas
Но, похоже, вы также можете использовать 'aggfunc' для функции кросс-таблицы. –