اکسل و CSV

اصلاح شده

2026-07-25

چرا pandas؟

  • برای فایل‌های جدولی (CSV، Excel) روش دستی با open() خیلی دست‌وپاگیره
  • pandas داده رو به‌صورت جدول (DataFrame) میاره که کار باهاش راحت‌تره

نصب و وارد کردن

pip install pandas openpyxl
import pandas as pd

openpyxl برای خواندن/نوشتن فایل‌های Excel لازمه (pandas از پشت صحنه ازش استفاده می‌کنه)

خواندن فایل CSV

df = pd.read_csv('data.csv')
print(df)
  • خروجی از نوع DataFrame هست — شبیه یک جدول اکسل

خواندن فایل Excel

df = pd.read_excel('data.xlsx')
print(df)
  • اگه فایل چند شیت داشته باشه، می‌شه شیت رو مشخص کرد:
df = pd.read_excel('data.xlsx', sheet_name='Sheet1')

نگاه سریع به داده

متد کار
df.head() نمایش ۵ ردیف اول
df.shape تعداد (ردیف, ستون)
df.columns لیست نام ستون‌ها
df.info() نوع داده هر ستون + تعداد مقادیر

دسترسی به داده

print(df['name'])          # یک ستون
print(df.iloc[0])           # یک ردیف با اندیس عددی
print(df.loc[0, 'name'])    # یک سلول خاص

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

adults = df[df['age'] >= 18]
print(adults)

نوشتن در فایل

df.to_csv('output.csv', index=False)
df.to_excel('output.xlsx', index=False)
  • index=False : ستون اندیس اضافه (0,1,2,…) توی فایل خروجی نوشته نشه

ساخت DataFrame از صفر (بدون فایل ورودی)

data = {
    'name': ['Ali', 'Sara'],
    'age': [25, 30]
}
df = pd.DataFrame(data)

نکته کلاسی

  • برای کار سریع و ساده با جدول (فیلتر، مرتب‌سازی، خروجی گرفتن)، pandas خیلی سریع‌تر و خواناتر از خواندن دستی خط‌به‌خط فایله؛ ولی برای فایل‌های متنی ساده (مثل log) همون روش open() کافیه.