Kahibaro
Discord Login Register

فصل ۱۶: علم داده با پایتون

مرور کلی فصل و هدف آن

در این فصل با یکی از مهم‌ترین و محبوب‌ترین کاربردهای پایتون آشنا می‌شوید: علم داده.
هدف این فصل این است که:

جزئیات دقیق هر کتابخانه در زیرعنوان‌های همین فصل خواهد آمد؛ اینجا تصویر کلی را می‌سازیم و ارتباط بخش‌ها را توضیح می‌دهیم.

علم داده چیست و چه مشکلی را حل می‌کند؟

علم داده (Data Science) یعنی استفاده از:

برای:

علم داده در عمل یعنی:

  1. جمع‌آوری داده
    مثلا گرفتن داده از فایل‌های متنی، Excel، پایگاه‌داده، وب‌سایت‌ها و …
  2. تمیز کردن و آماده‌سازی داده
    دادهٔ واقعی معمولا ناقص، کثیف و نامنظم است.
    مثال:
    • مقادیر خالی (missing values)
    • خطای تایپ در نام‌ها
    • فرمت‌های مختلف تاریخ‌ها
  3. بررسی و تحلیل اکتشافی داده (EDA)
    پیدا کردن الگوها و روابط ساده:
    • میانگین‌ها، حداقل و حداکثر
    • نمودارها برای دیدن توزیع داده
    • کشف داده‌های عجیب و پرت
  4. مدل‌سازی و پیش‌بینی (در مراحل پیشرفته‌تر)
    مثلا:
    • پیش‌بینی فروش ماه بعد
    • پیش‌بینی این‌که کدام مشتری احتمال ترک دارد
  5. گزارش و مصورسازی نتایج
    • ساخت نمودار
    • جدول‌های خلاصه
    • داشبوردها و گزارش‌ها برای افراد غیر فنی

در این فصل ما روی مراحل ۲، ۳ و ۵ تمرکز مقدماتی داریم؛ یعنی:

چرا پایتون برای علم داده محبوب است؟

پایتون یکی از محبوب‌ترین زبان‌ها برای علم داده است، چون:

در این فصل روی سه کتابخانهٔ NumPy, pandas, matplotlib تمرکز می‌کنیم که پایهٔ کار علمی داده با پایتون هستند.

مسیر معمول یک پروژهٔ کوچک علم داده

برای درک بهتر، یک «سناریوی ساده» را تصور کنید:

می‌خواهیم داده‌های فروش یک فروشگاه را بررسی کنیم:
- داده در یک فایل sales.csv ذخیره شده است.
- می‌خواهیم بدانیم:
- مجموع فروش هر ماه چقدر بوده؟
- بهترین ماه فروش کدام بوده؟
- یک نمودار سادهٔ خطی از فروش ماهانه بکشیم.

گام‌های معمول:

  1. وارد کردن کتابخانه‌ها
   import numpy as np
   import pandas as pd
   import matplotlib.pyplot as plt
  1. خواندن داده (معمولا با pandas)
   df = pd.read_csv("sales.csv")
  1. نگاه سریع به داده
   print(df.head())       # چند ردیف اول
   print(df.info())       # اطلاعات کلی ستون‌ها
   print(df.describe())   # آمار عددی ستون‌ها
  1. تمیز کردن/آماده کردن داده
    مثال:
    • حذف ردیف‌هایی که مقدار فروش در آن‌ها خالی است
   df = df.dropna(subset=["amount"])
   df["date"] = pd.to_datetime(df["date"])
  1. گروه‌بندی و خلاصه‌کردن
    مثلا مجموع فروش در هر ماه:
   df["month"] = df["date"].dt.to_period("M")
   monthly_sales = df.groupby("month")["amount"].sum()
   print(monthly_sales)
  1. مصورسازی
   monthly_sales.plot(kind="line")
   plt.xlabel("ماه")
   plt.ylabel("مجموع فروش")
   plt.title("فروش ماهانه")
   plt.show()

این مثال، تصویر کلیِ «کار با داده با پایتون» را نشان می‌دهد.
در زیربخش‌های بعدی فصل، هر کدام از ابزارهای استفاده‌شده (NumPy, pandas, matplotlib) را جداگانه و با مثال‌های ساده‌تر یاد می‌گیرید.

داده در دنیای واقعی چگونه است؟

وقتی از «داده» صحبت می‌کنیم، منظور فقط یک فایل تمیز و آماده نیست.
چند نوع دادهٔ رایج که در علم داده با آن‌ها کار می‌کنید:

در این دورهٔ مقدماتی، تمرکز روی داده‌های جدولی و عددی/متنی ساده است، چون:

نقش کتابخانه‌های این فصل در کنار هم

در این فصل با سه کتابخانهٔ اصلی آشنا می‌شوید. هر کدام چه نقشی دارد؟

NumPy

نمونهٔ ساده (نمایش ایده، توضیح کامل در بخش مخصوص NumPy می‌آید):

import numpy as np
a = np.array([1, 2, 3, 4])
print(a * 10)   # هر عنصر در 10 ضرب می‌شود

pandas

استفادهٔ معمول:

نمونهٔ ساده (توضیح کامل در بخش pandas):

import pandas as pd
data = {
    "name": ["Ali", "Sara", "Reza"],
    "age": [25, 30, 22]
}
df = pd.DataFrame(data)
print(df)

matplotlib

نمونهٔ ساده (توضیح کامل در بخش matplotlib):

import matplotlib.pyplot as plt
x = [1, 2, 3, 4]
y = [10, 20, 15, 25]
plt.plot(x, y)
plt.xlabel("X")
plt.ylabel("Y")
plt.title("یک نمودار خطی ساده")
plt.show()

در علم داده، این سه کتابخانه معمولاً با هم استفاده می‌شوند:

  1. pandas برای مدیریت و تحلیل جدول‌ها
  2. NumPy برای محاسبات عددی در پشت‌صحنه
  3. matplotlib برای نشان دادن نتایج به‌صورت نمودار

یک «جریان کاری» ساده علم داده با پایتون

برای جمع‌بندی تصویری، یک روند کلی را به‌صورت گام‌به‌گام مرور کنیم.
فرض کنید یک فایل students.csv داریم با ستون‌های:

می‌خواهیم:

گام ۱: وارد کردن کتابخانه‌ها

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

گام ۲: خواندن داده

df = pd.read_csv("students.csv")

گام ۳: بررسی کوتاه داده

print(df.head())    # چند ردیف اول
print(df.describe())  # آمار عددی: میانگین، حداقل، حداکثر و ...

گام ۴: محاسبهٔ آماری ساده

میانگین نمره‌ها:

average_score = df["score"].mean()
print("میانگین نمره‌ها:", average_score)

تعداد افراد بالای ۱۸ سال:

over_18 = df[df["age"] > 18]
print("تعداد افراد بالای ۱۸ سال:", len(over_18))

(در فصل pandas این نوع فیلتر کردن را دقیق‌تر یاد می‌گیرید.)

گام ۵: رسم نمودار نمره‌ها

مثلا یک هیستوگرام ساده:

plt.hist(df["score"], bins=5)  # 5 بازه برای نمره‌ها
plt.xlabel("نمره")
plt.ylabel("تعداد دانش‌آموزان")
plt.title("توزیع نمره‌ها")
plt.show()

این چند خط کد، یک «تحلیل داده» بسیار ساده را نشان می‌دهد.
در ادامهٔ فصل، در هر زیربخش:

را با مثال‌های بیشتری می‌بینید تا بتوانید خودتان چنین تحلیل‌های ساده‌ای را از صفر انجام دهید.

چه انتظاری از خودتان در پایان این فصل داشته باشید؟

بعد از اتمام تمام زیربخش‌های فصل ۱۶، باید:

را داشته باشید.

و مهم‌تر از همه:
یک تصویر واقعی و عملی از این‌که «علم داده با پایتون در عمل یعنی چه؟» در ذهن شما شکل می‌گیرد تا اگر دوست داشتید، در مراحل بعدی به‌سمت مباحث پیشرفته‌تر مثل یادگیری ماشین حرکت کنید.

Views: 7

Comments

Please login to add a comment.

Don't have an account? Register now!