ป้อนข้อมูล − สมมติว่าคุณมีซีรีส์
0 1 1 2 2 3 3 2 4 3 5 3 6 3 7 4 8 4 9 2
ผลผลิต − และผลลัพธ์สำหรับองค์ประกอบที่ซ้ำกันมากที่สุดคือ 3
วิธีแก้ปัญหา
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนด้านล่าง -
-
กำหนดซีรีส์
-
ใช้ functools ลดเมธอดภายในฟังก์ชันแลมบ์ดาเพื่อเปรียบเทียบความยาวขององค์ประกอบทั้งหมดทีละส่วน มีการกำหนดไว้ด้านล่าง
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