Pandas DataFrame GroupBy Multiple Columns for Counting Values
При манипуляциях с DataFrame с помощью Pandas группировка данных по нескольким столбцам может дать ценную информацию. В этой статье показано, как подсчитывать наблюдения при группировке по двум столбцам, а также определять наибольшее количество для каждой группировки.
При наличии DataFrame с несколькими столбцами можно применить функцию «groupby» для группировки данных. на основе конкретных столбцов. Здесь у нас есть DataFrame с именем «df» с пятью столбцами: «col1», «col2», «col3», «col4» и «col5».
import pandas as pd
df = pd.DataFrame([
[1.1, 1.1, 1.1, 2.6, 2.5, 3.4,2.6,2.6,3.4,3.4,2.6,1.1,1.1,3.3],
list('AAABBBBABCBDDD'),
[1.1, 1.7, 2.5, 2.6, 3.3, 3.8,4.0,4.2,4.3,4.5,4.6,4.7,4.7,4.8],
['x/y/z','x/y','x/y/z/n','x/u','x','x/u/v','x/y/z','x','x/u/v/b','-','x/y','x/y/z','x','x/u/v/w'],
['1','3','3','2','4','2','5','3','6','3','5','1','1','1']
]).T
df.columns = ['col1','col2','col3','col4','col5']
Подсчет по группам строк
Чтобы подсчитать количества наблюдений в каждой группе строк, используйте функцию «groupby» для нужных столбцов, а затем примените функцию «size».
result = df.groupby(['col5', 'col2']).size()
Это создаст DataFrame со сгруппированными столбцами в качестве индекса и размером в качестве значений.
print(result)
Определение максимального количества
Чтобы определить максимальное количество для каждого значения 'col2', используйте функцию 'groupby' для 'col2', а затем примените функцию 'max' к сгруппированным данным .
result = df.groupby(['col5', 'col2']).size().groupby(level=1).max()
Это создаст Серия с максимальным количеством для каждого значения 'col2'.
print(result)
Подводя итог, использование функций groupby и size в Pandas позволяет эффективно анализ и агрегирование данных, позволяющие пользователям извлекать информацию о своих данных различными способами.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3