تحلیل داده با Pandas: راهنمای جامع

تحلیل داده با Pandas: راهنمای جامع

Pandas یکی از قدرتمندترین و پرکاربردترین کتابخانه‌های پایتون برای تحلیل و دستکاری داده‌ها است. این کتابخانه ابزارهایی را فراهم می‌کند که به شما امکان می‌دهد داده‌ها را به راحتی خوانده، پاکسازی، تبدیل و تحلیل کنید. در این مقاله، به بررسی عمیق استفاده از Pandas در علم داده و یادگیری ماشین خواهیم پرداخت.

مقدمه‌ای بر Pandas

Pandas بر پایه دو ساختار داده اصلی بنا شده است: Series و DataFrame. Series یک آرایه یک‌بعدی برچسب‌دار است که می‌تواند هر نوع داده‌ای را در خود جای دهد. DataFrame یک ساختار داده دو بعدی برچسب‌دار است که شبیه به یک جدول یا صفحه گسترده است. هر ستون در یک DataFrame می‌تواند نوع داده متفاوتی داشته باشد.

نصب Pandas

برای نصب Pandas، می‌توانید از pip استفاده کنید:

pip install pandas

وارد کردن Pandas

پس از نصب، Pandas را به صورت زیر وارد کنید:

import pandas as pd

Series در Pandas

Series یک آرایه یک‌بعدی است که می‌تواند هر نوع داده‌ای را در خود جای دهد. می‌توانید Series را از لیست، دیکشنری یا آرایه NumPy ایجاد کنید.

ایجاد Series

data = [10, 20, 30, 40, 50]
series = pd.Series(data)
print(series)

خروجی:

0    10
1    20
2    30
3    40
4    50
dtype: int64

همچنین می‌توانید ایندکس‌های سفارشی را مشخص کنید:

series = pd.Series(data, index=['a', 'b', 'c', 'd', 'e'])
print(series)

دسترسی به عناصر Series

می‌توانید با استفاده از ایندکس به عناصر Series دسترسی پیدا کنید:

print(series['a'])
print(series[0])

DataFrame در Pandas

DataFrame یک ساختار داده دو بعدی است که شبیه به یک جدول یا صفحه گسترده است. می‌توانید DataFrame را از دیکشنری، لیست دیکشنری‌ها، یا فایل‌های CSV، Excel و غیره ایجاد کنید.

ایجاد DataFrame

data = {'Name': ['Alice', 'Bob', 'Charlie'],
        'Age': [25, 30, 28],
        'City': ['New York', 'London', 'Paris']}
df = pd.DataFrame(data)
print(df)

خروجی:

      Name  Age      City
0    Alice   25  New York
1      Bob   30    London
2  Charlie   28     Paris

خواندن داده از فایل CSV

df = pd.read_csv('data.csv')
print(df.head()) # نمایش پنج ردیف اول

دسترسی به ستون‌ها و ردیف‌ها

برای دسترسی به یک ستون، از نام ستون استفاده کنید:

print(df['Name'])

برای دسترسی به یک ردیف، از متد `loc` یا `iloc` استفاده کنید. `loc` بر اساس برچسب ایندکس کار می‌کند، در حالی که `iloc` بر اساس موقعیت عددی کار می‌کند.

print(df.loc[0]) # دسترسی به ردیف با ایندکس 0
print(df.iloc[0]) # دسترسی به ردیف اول

عملیات رایج در Pandas

Pandas امکانات گسترده‌ای برای دستکاری و تحلیل داده‌ها فراهم می‌کند.

پاکسازی داده‌ها

داده‌های واقعی اغلب ناقص یا دارای خطا هستند. Pandas ابزارهایی برای پاکسازی داده‌ها ارائه می‌دهد.

حذف مقادیر گمشده (NaN)

df.dropna() # حذف ردیف‌هایی که دارای مقادیر گمشده هستند
df.fillna(0) # جایگزینی مقادیر گمشده با 0

حذف ردیف‌های تکراری

df.drop_duplicates()

فیلتر کردن داده‌ها

می‌توانید داده‌ها را بر اساس شرایط خاص فیلتر کنید.

df[df['Age'] > 25] # انتخاب ردیف‌هایی که سن آن‌ها بیشتر از 25 است

مرتب‌سازی داده‌ها

df.sort_values(by='Age') # مرتب‌سازی بر اساس ستون 'Age'

گروه‌بندی داده‌ها

می‌توانید داده‌ها را بر اساس یک یا چند ستون گروه‌بندی کنید و عملیات تجمعی را روی هر گروه انجام دهید.

df.groupby('City')['Age'].mean() # محاسبه میانگین سن برای هر شهر

اضافه کردن و حذف ستون‌ها

df['Salary'] = [50000, 60000, 55000] # اضافه کردن ستون جدید
df.drop('City', axis=1) # حذف ستون 'City'

تغییر نوع داده

df['Age'] = df['Age'].astype(float) # تبدیل نوع داده ستون 'Age' به float

تحلیل داده با Pandas

Pandas ابزارهای قدرتمندی برای تحلیل داده‌ها ارائه می‌دهد.

آمار توصیفی

df.describe() # محاسبه آمار توصیفی برای ستون‌های عددی

همبستگی

df.corr() # محاسبه ماتریس همبستگی بین ستون‌های عددی

مقادیر منحصر به فرد

df['City'].unique() # نمایش مقادیر منحصر به فرد در ستون 'City'

تعداد مقادیر منحصر به فرد

df['City'].nunique() # نمایش تعداد مقادیر منحصر به فرد در ستون 'City'

ادغام و اتصال DataFrame‌ها

Pandas امکان ادغام و اتصال DataFrame‌ها را فراهم می‌کند.

ادغام (Merge)

df1 = pd.DataFrame({'ID': [1, 2, 3], 'Name': ['A', 'B', 'C']})
df2 = pd.DataFrame({'ID': [1, 2, 4], 'Salary': [50000, 60000, 70000]})
pd.merge(df1, df2, on='ID') # ادغام بر اساس ستون 'ID'

اتصال (Concatenate)

pd.concat([df1, df2]) # اتصال DataFrame‌ها به صورت عمودی

نتیجه‌گیری

Pandas یک کتابخانه ضروری برای هر دانشمند داده یا مهندس یادگیری ماشین است. با استفاده از Pandas، می‌توانید داده‌ها را به راحتی خوانده، پاکسازی، تبدیل و تحلیل کنید. این مقاله تنها یک مقدمه بر قابلیت‌های Pandas است. با تمرین و مطالعه بیشتر، می‌توانید از تمام پتانسیل این کتابخانه قدرتمند بهره‌مند شوید.

بدون دیدگاه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *