입력 − 시리즈가 있다고 가정합니다.
0 1 1 2 2 3 3 2 4 3 5 3 6 3 7 4 8 4 9 2
출력 − 그리고, 가장 많이 반복되는 요소의 결과는 3입니다.
해결책
이 문제를 해결하기 위해 다음 단계를 따릅니다. -
-
시리즈 정의
-
모든 요소의 길이를 서로 비교하기 위해 람다 함수 내부에 functools reduce 메소드를 적용합니다. 아래에 정의되어 있습니다.
ft.reduce(lambda x,y:x if(len(data[data==x])>len(data[data==y])) else y,data)
예시
더 나은 이해를 위해 다음 구현을 살펴보겠습니다.
import pandas as pd import functools as ft l = [1,2,3,2,3,3,3,4,4,2] data = pd.Series(l) print("most repeated element is:", ft.reduce(lambda x,y:x if(len(data[data==x])>len(data[data==y])) else y,data))
출력
most repeated element is: 3