কম্পিউটার টিউটোরিয়াল

পাইথন প্রোগ্রাম: সিরিজে সবচেয়ে বেশি বার পুনরাবৃত্ত হওয়া এলিমেন্ট বের করুন

সমস্যা বিবরণ

একটি সিরিজ দেওয়া আছে যাতে কিছু সংখ্যা বারবার রিপিট হয়েছে। লক্ষ্য হলো সবচেয়ে বেশি ফ্রিকোয়েন্সি (mode) والی এলিমেন্টটি খুঁজে বের করা।

ইনপুট সিরিজ

0    1
1    2
2    3
3    2
4    3
5    3
6    3
7    4
8    4
9    2

সমাধানের পদ্ধতি (functools.reduce ব্যবহার করে)

  1. সিরিজ তৈরি করুন।
  2. functools.reduce ও ল্যাম্বডা ফাংশন ব্যবহার করে প্রতিটি ইউনিক ভ্যালুর ফ্রিকোয়েন্সি তুলনা করুন।
  3. সর্বোচ্চ ফ্রিকোয়েন্সি वाली ভ্যালু রিটার্ন করুন।
import pandas as pd
import functools as ft

l = [1,2,3,2,3,3,3,4,4,2]
data = pd.Series(l)

most_repeated = ft.reduce(
    lambda x, y: x if len(data[data == x]) > len(data[data == y]) else y,
    data
)
print("সর্বোচ্চ পুনরাবৃত্ত এলিমেন্ট:", most_repeated)

আউটপুট

সর্বোচ্চ পুনরাবৃত্ত এলিমেন্ট: 3

বিকল্প পদ্ধতি (প্যান্ডাস বিল্ট-ইন mode() - সুপারিশ করা)

import pandas as pd
data = pd.Series([1,2,3,2,3,3,3,4,4,2])
mode_val = data.mode()
print("Mode (সর্বোচ্চ ফ্রিকোয়েন্সি):", mode_val.iloc[0] if not mode_val.empty else "None")

আউটপুট

Mode (সর্বোচ্চ ফ্রিকোয়েন্সি): 3

নোট: mode() একাধিক মোড থাকলে সবগুলো রিটার্ন করে (যেমন [2,3] যদি দুটোই ৪ বার করে থাকে)। value_counts().idxmax()ও ব্যবহার করা যায়।

  1. পাইথন প্রোগ্রাম: সিরিজে সবচেয়ে বেশি বার পুনরাবৃত্ত হওয়া এলিমেন্ট বের করুন

  2. পাইথন প্রোগ্রাম: দिये गये সিরিজের সব উপাদানের পাওয়ার প্রিন্ট করা

  3. পাইথন প্রোগ্রাম: সিরিজ থেকে নির্দিষ্ট রেঞ্জের (Range) এলিমেন্ট ফিল্টার করুন

  4. পাইথন প্রোগ্রাম ডায়ামন্ড আকার প্রিন্ট করা