آموزش Pandas | تغییر داده‌ها

تغییر نام ستون‌ها

تغییر نام ستون‌ها در Pandas یکی از عملیات‌های رایج و مهم در کار با داده‌ها است. این کار به دلایل مختلفی مانند خوانایی بهتر، یکسان‌سازی نام‌ها یا تطبیق با استانداردهای خاص انجام می‌شود.

برای تغییر نام ستون‌ها، عمدتاً از متد rename() استفاده می‌شود. این متد انعطاف‌پذیری بالایی دارد و می‌تواند بر روی یک DataFrame اعمال شود.

روش تغییر نام یک یا چند ستون:

می‌توانید با استفاده از یک دیکشنری، نام قدیمی و جدید ستون‌ها را مشخص کنید. کلیدهای دیکشنری نام‌های قدیمی و مقادیر آن، نام‌های جدید هستند.

import pandas as pd

# ایجاد یک DataFrame نمونه
data = {'Name': ['Ali', 'Sara', 'Reza'],
        'Ag': [25, 30, 35],
        'Ct': ['Tehran', 'Isfahan', 'Shiraz']}
df = pd.DataFrame(data)

print("DataFrame اصلی:")
print(df)

# تغییر نام ستون‌های 'Ag' به 'Age' و 'Ct' به 'City'
df = df.rename(columns={'Ag': 'Age', 'Ct': 'City'})

print("\nDataFrame پس از تغییر نام ستون‌ها:")
print(df)

خروجی:

DataFrame اصلی:
   Name  Ag       Ct
0   Ali  25   Tehran
1  Sara  30  Isfahan
2  Reza  35   Shiraz

DataFrame پس از تغییر نام ستون‌ها:
   Name  Age      City
0   Ali   25    Tehran
1  Sara   30   Isfahan
2  Reza   35    Shiraz

تغییر نام همه ستون‌ها به یکباره:

اگر بخواهید نام تمام ستون‌ها را تغییر دهید، می‌توانید یک لیست از نام‌های جدید را مستقیماً به ویژگی columns DataFrame اختصاص دهید. توجه داشته باشید که ترتیب نام‌ها در لیست جدید باید با ترتیب ستون‌ها مطابقت داشته باشد.

# تغییر نام تمام ستون‌ها
df.columns = ['Full_Name', 'User_Age', 'Location']

print("DataFrame پس از تغییر نام تمام ستون‌ها:")
print(df)

نکات مهم:

  • هنگام استفاده از متد rename()، به طور پیش‌فرض یک DataFrame جدید بازگردانده می‌شود و DataFrame اصلی تغییر نمی‌کند. اگر می‌خواهید تغییرات به صورت مستقیم روی DataFrame اصلی اعمال شود، باید از پارامتر inplace=True استفاده کنید: df.rename(columns={'old_name': 'new_name'}, inplace=True).
  • تغییر نام ستون‌ها می‌تواند شامل فاصله یا کاراکترهای خاص نیز باشد، اما معمولاً توصیه می‌شود از نام‌های ساده و بدون فاصله استفاده کنید تا در عملیات بعدی مانند انتخاب ستون با نقطه مشکلی پیش نیاید.
پرسش و پاسخ این درس

برای ثبت پرسش ابتدا در سایت وارد شوید.

  • 1
  • 2
  • 3