Latest Technologies Spark এবং Python ব্যবহার করে Data Cleaning গাইড ও নোট

230

Data cleaning হল ডেটা প্রক্রিয়াকরণের একটি গুরুত্বপূর্ণ পর্যায় যা ডেটার গুণগত মান উন্নত করতে এবং বিশ্লেষণের জন্য প্রস্তুত করতে সহায়ক। Apache Spark এবং Python (PySpark) ব্যবহার করে ডেটা ক্লিনিং প্রক্রিয়া সম্পন্ন করা যায়। নিচে Spark এবং Python ব্যবহার করে ডেটা ক্লিনিং-এর একটি উদাহরণ আলোচনা করা হলো।

প্রয়োজনীয়তা

  1. Apache Spark: Spark ইনস্টল করা থাকতে হবে এবং PySpark লাইব্রেরি ব্যবহারের জন্য প্রস্তুত থাকতে হবে।
  2. Python Environment: Python ইন্সটল থাকা দরকার এবং প্যাকেজগুলির মধ্যে Pandas এবং PySpark থাকতে হবে।
  3. ডেটা সোর্স: একটি ডেটা ফাইল, যেমন CSV, JSON, অথবা Parquet, যা ক্লিনিং প্রক্রিয়ায় ব্যবহার করা হবে।

উদাহরণ: Spark এবং Python ব্যবহার করে ডেটা ক্লিনিং

১. PySpark ইন্সটল করা

PySpark ইন্সটল করতে নিচের কমান্ডটি ব্যবহার করুন:

pip install pyspark

২. ডেটা লোড করা

ধরি, আমাদের কাছে একটি employees.csv ফাইল রয়েছে:

id,name,department,salary
1,John Doe,Sales,60000
2,Jane Smith,Marketing,NaN
3,Alice Brown,Sales,75000
4,Bob Johnson,IT,80000
5,Charlie Lee,Marketing,65000
6,NaN,Finance,70000

৩. PySpark স্ক্রিপ্ট লেখা

from pyspark.sql import SparkSession
from pyspark.sql.functions import col

# SparkSession তৈরি করা
spark = SparkSession.builder \
    .appName("Data Cleaning Example") \
    .getOrCreate()

# ডেটা লোড করা
df = spark.read.csv("path/to/employees.csv", header=True, inferSchema=True)

# ডেটা প্রদর্শন
print("Original Data:")
df.show()

# ১. NaN মানগুলো বাদ দেওয়া
cleaned_df = df.na.drop()

# ২. যেসব কর্মচারীর নাম নেই সেগুলো বাদ দেওয়া
cleaned_df = cleaned_df.filter(col("name").isNotNull())

# ৩. বেতন কলামে নেতিবাচক মানগুলি বাদ দেওয়া
cleaned_df = cleaned_df.filter(col("salary") >= 0)

# ক্লিনড ডেটা প্রদর্শন
print("Cleaned Data:")
cleaned_df.show()

# ক্লিনড ডেটা S3 এ সংরক্ষণ করা (যদি প্রয়োজন হয়)
# cleaned_df.write.csv("path/to/cleaned_employees.csv", header=True)

# SparkSession বন্ধ করা
spark.stop()

স্ক্রিপ্টের ব্যাখ্যা

  1. SparkSession তৈরি: SparkSession তৈরি করে যা Spark-এর প্রধান প্রবেশদ্বার।
  2. ডেটা লোড: CSV ফাইল থেকে ডেটা লোড করে DataFrame এ রাখে।
  3. NaN মান বাদ দেওয়া: na.drop() ব্যবহার করে NaN মানগুলো বাদ দেয়।
  4. নাম নেই এমন কর্মচারী বাদ দেওয়া: filter() ফাংশনের মাধ্যমে name কলামে null মানগুলি বাদ দেয়।
  5. নেতিবাচক বেতন বাদ দেওয়া: বেতন কলামে নেতিবাচক মানগুলি বাদ দেওয়ার জন্য আবার filter() ব্যবহার করা হয়।
  6. সংশোধিত ডেটা প্রদর্শন: ক্লিনড ডেটা show() ফাংশনের মাধ্যমে প্রদর্শন করা হয়।
  7. ডেটা সংরক্ষণ: যদি প্রয়োজন হয়, ক্লিনড ডেটা S3 এ সংরক্ষণ করা যেতে পারে।

উপসংহার

Spark এবং Python (PySpark) ব্যবহার করে ডেটা ক্লিনিং প্রক্রিয়া একটি দ্রুত এবং কার্যকরী উপায়, বিশেষ করে বড় ডেটাসেটের জন্য। এই উদাহরণে, আমরা NaN মান এবং নেতিবাচক বেতন বাদ দেওয়ার মাধ্যমে একটি সাধারণ ডেটা ক্লিনিং প্রক্রিয়া সম্পন্ন করেছি। PySpark-এর শক্তিশালী ডেটা প্রক্রিয়াকরণের ক্ষমতা ব্যবহার করে, ডেটার গুণগত মান বৃদ্ধি করা সম্ভব।

Content added By
Promotion

Are you sure to start over?

Loading...