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

পাইথন প্রোগ্রাম: সিরিজে ডুপ্লিকেট (Duplicate) এলিমেন্ট আছে কিনা চেক করুন

সমস্যা বিবরণ

একটি সিরিজ দেওয়া আছে। লক্ষ্য হলো সিরিজে কোনো ডুপ্লিকেট ভ্যালু আছে কিনা তা যাচাই করা।

ইনপুট সিরিজ (ডুপ্লিকেট নেই)

0    1
1    2
2    3
3    4
4    5

ইনপুট সিরিজ (ডুপ্লিকেট আছে)

0    1
1    2
2    3
3    4
4    5
5    3

সমাধান ১: NumPy unique() দিয়ে লেন্থ তুলনা করে

যদি সিরিজের লেন্থ ও ইউনিক ভ্যালুগুলোর লেন্থ সমান হয়, তবে ডুপ্লিকেট নেই।

import pandas as pd
import numpy as np

data = pd.Series([1,2,3,4,5])
result = "ডুপ্লিকেট নেই" if len(data) == len(np.unique(data)) else "ডুপ্লিকেট পাওয়া গেছে!"
print(result)

data_dup = pd.Series([1,2,3,4,5,3])
result2 = "ডুপ্লিকেট নেই" if len(data_dup) == len(np.unique(data_dup)) else "ডুপ্লিকেট পাওয়া গেছে!"
print(result2)

সমাধান ২: প্যান্ডাস duplicated() মেথড (স্পষ্ট ও সরাসরি)

import pandas as pd

data = pd.Series([1,2,3,4,5,3])
if data.duplicated().any():
    print("ডুপ্লিকেট পাওয়া গেছে!")
else:
    print("ডুপ্লিকেট নেই")

# কোন ইনডেক্সগুলো ডুপ্লিকেট?
print("ডুপ্লিকেট ইনডেক্স:", data[data.duplicated()].index.tolist())

আউটপুট

ডুপ্লিকেট নেই
ডুপ্লিকেট পাওয়া গেছে!
ডুপ্লিকেট ইনডেক্স: [5]

ব্যাখ্যা: duplicated() প্রতিটি এলিমেন্টের জন্য True/False রিটার্ন করে (প্রথম ঘটনাকে False, পরেরগুলাকে True)। .any() দিয়ে কোনো True আছে কিনা চেক করা যায়।

  1. পাইথনে হিপ লিস্ট ম্যাক্স হিপ কিনা চেক করা

  2. দেওয়া স্ট্রিংটি পাইথন কিওয়ার্ড কিনা চেক করার প্রোগ্রাম

  3. পাইথনে প্যালিনড্রোম স্ট্রিং চেক করা

  4. পাইথন প্রোগ্রাম: সাইক্লিক রिडান্ডেন্সি চেক (Cyclic Redundancy Check - CRC)