팬더 Groupby 평균

Paendeo Groupby Pyeong Gyun



두 개 이상의 값을 더하고 그 합을 더한 값의 총수로 나누면 결과가 평균입니다. Pandas Mean은 주어진 축을 따라 데이터 또는 값의 평균을 반환합니다. mean() 메서드가 데이터 프레임에 적용되면 축 전체의 평균이 있는 계열이 pandas에 의해 반환됩니다. Pandas는 'mean()'이 시리즈에 사용되는 경우 숫자 값(단일 숫자)을 반환합니다. 범주 그룹을 생성한 후 범주에 기능을 적용할 수 있습니다. 간단한 아이디어지만 데이터 과학에서 자주 적용되는 매우 효과적인 기술입니다. 이를 통해 각 그룹에 대한 데이터 요약을 생성하고, 그룹별 수정 사항을 적용하고, 데이터 필터링을 수행할 수 있습니다. groupby() 함수를 사용하면 객체를 분할하고 함수를 적용한 다음 제품을 결합할 수 있습니다. 이를 통해 대규모 데이터 세트를 그룹화할 수 있으며 그룹에 대한 작업을 수행할 수 있습니다.

Pandas에서 groupby.mean() 메서드를 사용하는 방법은 무엇입니까?

데이터 프레임의 평균 또는 데이터 프레임의 특정 열의 평균을 계산하려면 groupby.mean() 함수를 사용할 수 있습니다. 다음 예제에서 사용법을 보여드리겠습니다.







예제 # 01: 단일 열의 데이터를 그룹화하여 단일 정수 열의 평균 결정

pd.DataFrame() 함수를 사용하여 먼저 데이터 프레임을 생성하여 데이터 프레임의 열 데이터를 그룹으로 나눈 다음 평균값을 찾습니다. 데이터 프레임을 생성하기 전에 numpy 라이브러리와 함께 pandas 모듈을 가져와야 합니다.





보시다시피 pandas 사전을 사용하여 데이터 프레임을 만들었습니다. df 데이터 프레임에는 'items', 'manufacturer' 및 'quantity'라는 3개의 열이 있습니다. 'items' 열에 값('셔츠', '타이', '바지', '셔츠', '타이', '바지', '셔츠', '바지', '바지', ' 넥타이'), '제조업체' 및 '수량' 열에는 값('이탈리아', '프랑스', '중국', '프랑스', '중국', '이탈리아', '중국', '이탈리아'), '프랑스', '중국') 및 (13, 16, 21, 32, 26, 41, 24, 42, 12, 15) 각각. 제조업체 열의 값을 그룹화하고 각 제조업체의 평균 수량 값을 결정하겠습니다.





제조업체 값 'china'의 평균 수량 값은 21.5, 'france'의 평균 수량 값은 20.0, 'Italy'의 평균 수량 값은 32.0입니다. groupby.mean() 함수와 함께 reset_index 함수를 사용하여 출력에 대한 인덱스를 지정할 수도 있습니다.



예제 # 02: 단일 열의 데이터를 그룹화하여 단일 부동 열의 평균 찾기

데이터를 그룹화한 후 정수 열의 평균을 찾는 방법을 살펴보았습니다. 이제 float와 같은 다른 데이터 유형 열을 사용해 보겠습니다. 부동 소수점 값이 있는 열이 하나 이상 있는 데이터 프레임은 pd.DataFrame() 함수를 사용하여 생성됩니다.

pd.DataFrame() 내부에 사전을 넣어 세 개의 열이 있는 데이터 프레임을 만들었습니다. 'name' 열에는 임의의 플레이어('Sam', 'Jay', 'Leo', 'Mike', 'Will', 'Billy', 'Jhonny', 'Lara', 'Hanna', 'Tony'), 각 선수가 속한 팀을 나타내는 열 'team'('A', 'A', 'B', 'A', 'B', 'A', 'C', 'B ', 'C', 'C'), 'height' 열은 각 선수의 키를 float 값으로 저장합니다(5.6, 5.4, 6.3, 5.2, 5.5, 6.4, 5.6, 5.8, 6.0, 5.2). '팀' 열의 데이터를 그룹화하고 각각의 고유한 '팀' 값에 대한 평균 키 값을 결정하겠습니다.

A팀 선수의 평균 키 값은 5.65인 반면, B팀과 C팀 선수의 평균 키는 각각 5.866과 5.6임을 알 수 있습니다.

예제 # 03: groupby.mean() 함수를 사용하여 여러 열의 평균 결정

이전 예에서는 단일 열의 평균을 결정했습니다. 그러나 각 그룹에 대한 여러 열의 평균도 결정할 수 있습니다. pandas 및 numpy 모듈을 가져온 후 둘 이상의 숫자 열이 있는 데이터 프레임을 생성해 보겠습니다.

새로 생성된 데이터 프레임에는 '이름', '점수', '일치'라는 레이블이 있는 세 개의 열이 있습니다. 데이터 값을 문자열로 포함하는 열 이름('Ron', 'Jim', 'Dany', 'Jim', 'Jim', 'Dany', 'Ron', 'Ron', 'Dany', 'Jim' ), '점수'와 '경기'는 (3, 4, 2, 4, 1, 5, 2, 3, 1, 2) 및 (2, 3, 1, 2, 1, 3)과 같은 숫자 데이터로 구성됩니다. , 4, 1, 2, 1). 이제 'name' 컬럼의 데이터를 그룹핑한 후 'score' 컬럼과 'matches' 컬럼의 평균을 구해보자. 이를 위해 groupby.mean() 함수가 사용됩니다.

'대니'라는 그룹은 2.00경기에서 평균 2.66점을 기록하고 있는 것을 알 수 있다. Jim 그룹의 평균 점수는 2.75이고 플레이한 경기의 평균 가치는 1.75입니다. 반면 '론' 그룹의 평균 점수는 2.66점, 경기 횟수는 2.33점이다.

객체별 범주 그룹의 평균은 agg() 메서드를 사용하여 계산할 수도 있습니다. 평균을 agg() 함수에 대한 인수로 제공합니다. 주어진 축에서 단일 또는 다중 연산을 사용하여 집계하려면 agg() 함수를 사용할 수 있습니다.

출력은 이전과 동일합니다.

예제 # 04: 여러 열을 그룹화하여 특정 열의 평균 결정

예 1, 2, 3에서는 단일 열의 값 또는 데이터를 그룹화했습니다. 이제 groupby() 함수 내부의 열 레이블 목록을 사용하여 여러 열을 그룹화한 다음 각 그룹의 평균 값을 찾습니다. 사전 'd'는 데이터 프레임을 생성하기 위한 입력으로 pd.Dataframe() 함수 내부에 전달됩니다.

필요한 데이터 프레임을 만들었습니다. '스포츠' 열은 일부 스포츠('배드민턴', '축구', '테니스', '농구', '축구', '테니스', '농구', '축구', '배드민턴', ' 농구', '농구', '테니스'), 국가명('중국', '러시아', '이탈리아', '스페인', '러시아', '이탈리아', '중국', '이탈리아', ' 스페인', '중국', '러시아', '이탈리아')는 '국가' 열에 저장됩니다. 반면 '승리' 열에는 각 스포츠(13, 10, 6, 7, 10, 12, 7, 11, 8, 13, 11, 6)에서 국가별로 승리한 경기 수를 저장했습니다. groupby.mean() 함수를 사용하여 'sports' 및 'country' 열을 그룹화하여 'win' 열 값의 평균을 구해 보겠습니다.

이 함수는 해당 국가의 각 스포츠에 대한 '승리' 열 값의 평균을 성공적으로 결정했습니다. 그룹화된 데이터 프레임은 reset_index() 함수를 사용하여 재설정할 수 있으며, 이 함수도 새 인덱스를 생성하여 적절한 데이터 프레임 구조를 제공합니다.

각 데이터 프레임의 행에 대해 인덱스가 추가됩니다. 매력적인 테이블에 결과를 정렬하기 위해 pivot() 함수를 사용할 수도 있습니다.

결론

이 튜토리얼에서는 숫자의 평균 또는 평균이 무엇인지, 데이터 프레임의 열을 그룹화한 후 특정 열(하나 이상)의 평균을 찾는 방법에 대해 논의했습니다. 이 기사에서는 단일 열의 데이터를 그룹화하여 단일 정수 또는 부동 소수점 열의 평균을 결정하는 방법을 알려주기 위해 몇 가지 예를 구현했습니다. groupby.mean() 함수를 사용하여 여러 열의 평균을 결정하는 방법; 또한 여러 열을 그룹화하여 특정 열의 평균을 결정하는 방법에 대해서도 설명합니다.