پانداس (Pandas) چیست؟

pandas

پانداس کتابخانه‌ متن‌باز پایتون است که با بیش از ۱۰۰ میلیون دانلود در ماه، محبوب‌ترین ابزار برای پردازش و تحلیل اکتشافی داده‌ها محسوب می‌شود. قابلیت خواندن و نوشتن در فرمت‌های متنوع، آن را به ابزاری قدرتمند و انعطاف‌پذیر برای متخصصان علوم داده تبدیل کرده است. همچنین، توابع پردازش داده‌ی آن، pandas را به ابزاری کاربردی برای تجمیع، تحلیل و پاک‌سازی داده‌ها تبدیل می‌کند. پانداس در واقع افزونه‌ای برای پردازش و دستکاری داده‌های جدولی در پایتون است که کارهایی مانند بارگذاری، هم‌ترازی، ادغام و تبدیل مجموعه‌داده‌ها را به طور کارآمد پیاده‌سازی می‌کند.

محبوبیت پانداس به عنوان یک ابزار تحلیل داده را می‌توان به تطبیق‌پذیری و عملکرد کارآمد آن نسبت داد. نام “Pandas” از عبارت “panel data” (داده‌های پانلی) گرفته شده است که به مجموعه‌ داده‌هایی اشاره دارد که چندین دوره زمانی را در بر می‌گیرند و بر تمرکز آن بر ساختارهای داده‌ایِ همه‌کاره  ایست که مدیریت مجموعه‌داده‌های واقعی را راحت می‌کند.

با پشتیبانی از انواع فرمت‌های ساختاریافته داده‌ها مانند جداول، ماتریس‌ها و سری‌های زمانی، پانداس ابزارهایی را برای پردازش مجموعه‌داده‌های نامرتب یا خام و تبدیل آن به فرمت‌های تمیز،  ساختاریافته و آماده برای تحلیل ارائه می‌دهد. برای دستیابی به عملکرد بالا، عملیات‌های محاسباتی سنگین با استفاده از C یا Cython در کد منبع پشتیبان پیاده‌سازی شده‌اند. همچنین کتابخانه پانداس با سایر ابزارهای علمی و کتابخانه‌های تحلیل داده پایتون ادغام می‌شود.

کتابخانه pandas به‌صورت ذاتی از چند رشته‌ای(multi-threading) پشتیبانی نمی‌کند، که این موضوع می‌تواند توانایی آن را در بهره‌گیری از پردازنده‌های چند هسته‌ای مدرن و پردازش مجموعه داده‌های بزرگ به‌طور کارآمد محدود کند. با این حال، کتابخانه‌ها و افزونه‌های جدید در اکوسیستم پایتون می‌توانند به رفع این محدودیت کمک کنند.

کتابخانه pandas با سایر ابزارهای علمی در اکوسیستم گسترده‌ی تحلیل داده در پایتون یکپارچه

دسترسی سریع

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

پانداس وارد کردن (import) و صادر کردن (Export) مجموعه‌داده‌ها را از قالب‌های مختلف فایل مانند CSV، SQL و صفحات گسترده تسهیل می‌کند. این عملیات، همراه با قابلیت‌های دستکاری داده آن، پانداس را قادر می‌سازد تا داده‌های جدولی و آماری را تمیز کند، آنها را به شکل و فرمت مورد نیاز درآورد و تحلیل کند.

در نهایت، DataFrame به عنوان ستون فقرات پانداس عمل می‌کند و کاربران را قادر می‌سازد تا مجموعه‌داده‌های ساختاریافته را به طور کارآمد مدیریت و تحلیل کنند، از وارد کردن و صادر کردن داده‌های خام گرفته تا انجام وظایف پیشرفته دستکاری داده برای یادگیری ماشین و فراتر از آن.

data frame | پانداس (Pandas) چیست؟

پانداس امکان وارد کردن و صادر کردن داده‌های جدولی را در قالب‌های مختلف مانند CSV، SQL و فایل‌های صفحه گسترده فراهم می‌کند.

  pandas tabular data | پانداس (Pandas) چیست؟

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

pandas data manipulation | پانداس (Pandas) چیست؟

data manipulation plotting | پانداس (Pandas) چیست؟

به گفته  PyPI – مخزن پکیج‌های  پایتون – پانداس برای کار با انواع مختلف داده مناسب است، از جمله:

  • داده‌های جدولی با ستون‌های ناهمگن، مانند جدول SQL یا صفحه گسترده.
  • داده‌های سری زمانی مرتب و نامرتب (لزوماً با فرکانس ثابت).
  • داده‌های ماتریسی دلخواه (همگن یا ناهمگن) با برچسب‌های ردیف و ستون.
  • هر شکل دیگری از مجموعه‌داده‌های مشاهداتی/آماری. داده‌ها در واقع نیازی به برچسب‌گذاری ندارند تا در یک ساختار داده‌ای پانداس قرار گیرند.
panas | پانداس (Pandas) چیست؟

مزایای پانداس چیست؟

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

  • ساخته شده برای پایتون:  پایتون محبوب‌ترین زبان برنامه‌نویسی در حوزه یادگیری ماشین و علوم داده است.
  • کد کوتاه‌تر برای هر عملیات: کدهای نوشته‌شده با pandas نسبت به روش‌های سنتی کوتاه‌تر هستند و برای دستیابی به خروجی مطلوب، خطوط کمتری نیاز دارند.
  • طیف گسترده‌ای از ویژگی‌ها: این کتابخانه طیف وسیعی از اقدامات مختلف را پشتیبانی می‌کند، از تحلیل اکتشافی داده (EDA) گرفته تا مدیریت مقادیر گمشده، محاسبات آماری، مصورسازی داده‌های تک‌متغیره و دومتغیره و بسیاری موارد دیگر.
  • مدیریت داده‌های حجیم: pandas قادر است مجموعه داده‌های بزرگ را به‌راحتی پردازش کند. این کتابخانه بسته به قدرت سخت‌افزار، داده‌هایی با میلیون‌ها رکورد و صدها ستون را با سرعت و کارایی بالا مدیریت می‌کند.
 

ویژگی‌های کاربردی

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

  • مدیریت داده‌های گمشده (NaN): پانداس کار با مجموعه‌داده‌های حاوی داده‌های گمشده، که به عنوان NaN نشان داده می‌شوند، چه داده‌ها عددی باشند و چه غیر عددی، را ساده می‌کند.
  • عملکرد GroupBy: پانداس عملیات GroupBy کارآمد را فراهم می‌کند و کاربران را قادر می‌سازد تا گردش‌های کاری تقسیم-اعمال-ترکیب را برای تجمیع و تبدیل داده انجام دهند.
  • تغییر اندازه DataFrame: ستون‌ها را می‌توان به DataFrame یا ساختارهای داده‌ای با ابعاد بالاتر اضافه یا حذف کرد.
  • هم‌ترازی خودکار و صریح داده: پانداس با هم‌تراز کردن خودکار اشیاء مانند Series و DataFrames به برچسب‌هایشان، هم‌ترازی داده را تضمین می‌کند و محاسبات را ساده می‌کند.
  • مستندات کامل: رابط برنامه‌نویسی (API) کاربردی ساده‌شده و ویژگی‌های کاملاً مستند شده، منحنی یادگیری پانداس را کاهش می‌دهند. آموزش‌های کوتاه و ساده و نمونه‌های کد، کاربران جدید را قادر می‌سازند تا به سرعت شروع به کدنویسی کنند.
  • ابزارهای ورودی/خروجی: پانداس از وارد کردن و صادر کردن داده‌ها در قالب‌های مختلف مانند CSV، Excel، SQL و HDF5 پشتیبانی می‌کند.
  • مجموعه‌داده‌های آماده برای مصورسازی: پانداس تجسم ساده‌ای دارد که می‌تواند مستقیماً از شیء DataFrame ترسیم شود.
  • Pivot و un-Pivot بی‌دردسر: پانداس تغییر ساختار جدول یا همان تبدیل به پیووت و برعکس را آسان می‌کند تا داده‌ها برای تحلیل یا مصورسازی آماده شوند.
  • برچسب‌گذاری سلسله مراتبی: پانداس از نمایه سازی سلسله مراتبی پشتیبانی می‌کند و کاربران را قادر می‌سازد تا ساختارهای داده‌ای چند سطحی را در یک DataFrame واحد مدیریت کنند.
  • عملکرد سری زمانی: پانداس شامل چندین تابع تحلیل سری زمانی است که ابزارهایی برای تولید محدوده تاریخ، تبدیل فرکانس، محاسبات پنجره متحرک و تحلیل تاخیر ارائه می‌دهد.
 

کاربردهای پانداس در عمل

همانطور که آمار دانلود PyPI نشان می‌دهد، پانداس به ابزاری محبوب برای متخصصان علوم داده و تحلیلگران تبدیل شده است و مدیریت کارآمد مجموعه‌داده‌ها را در صنایع مختلف امکان‌پذیر می‌کند. قابلیت‌های آن برای تحلیل و دستکاری داده، آن را به انتخابی برتر برای حل مسائل دنیای واقعی تبدیل می‌کند.

  1. ادغام با SQL و تحلیل داده‌های آن
    پانداس با پایگاه‌های داده SQL ادغام می‌شود و کاربران را قادر می‌سازد تا مستقیماً در رابط برنامه‌نویسی پایتون پانداس از جداول SQL بخوانند و در آنها بنویسند. با وارد کردن مستقیم داده‌ها به DataFrame، کاربران می‌توانند از پانداس برای تحلیل داده استفاده کنند در حالی که SQL را برای کوئری زدن و مدیریت مجموعه‌داده‌ها حفظ می‌کنند.
  2. مصورسازی و بینش
    توانایی پانداس در تمیز کردن، فیلتر کردن و تبدیل داده‌های جدولی تضمین می‌کند که مجموعه‌داده‌ها برای نمودارسازی و کتابخانه‌های ترسیم پیشرفته مانند Matplotlib و Seaborn آماده هستند. به عنوان مثال، پانداس می‌تواند داده‌های گمشده را مدیریت کند و داده‌های سری زمانی را برای یافتن روندها و بینش‌های معنادار قالب‌بندی کند.
  3. تحلیل سری زمانی
     پانداس توابع سری زمانی متعددی برای وظایفی مانند تحلیل قیمت سهام، الگوهای آب‌و‌هوا و خواندن حسگرهای IoT دارد. عملکرد آن شامل تولید محدوده تاریخ، تبدیل فرکانس و عملیات‌های تغییر پیشرفته برای مجموعه‌داده‌های زمانی است.
  4. دستکاری پیچیده داده‌ها
    وظایفی مانند merge، Join یا الحاق چند DataFrame با پانداس بسیار ساده است. متد concat، همراه با ابزارهایی مانند pandas append، امکان ترکیب منابع داده ناهمگون را فراهم می‌کند. این کتابخانه همچنین قابلیت GroupBy را برای تجمیع و تبدیل داده‌ها ارائه می‌دهد و از تکنیک‌های پیشرفته تقسیم-اعمال-ترکیب پشتیبانی می‌کند.

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

  6. مدیریت داده‌های گمشده
    مدیریت داده‌های گمشده یکی از نقاط قوت اصلی پانداس است. کاربران می توانند مقادیر NaN را در یک DataFrame با مقدار درست پر کنند، آنها را درون‌یابی (interpolate) کنند یا حذف کنند تا در نهایت دیتاست تمیز و کاملی برای تحلیل کردن یا ادغام در خطوط لوله (pipelines)  یادگیری ماشین در اختیار داشته باشند.

 

پایتون و پانداس

از آنجا که pandas بر پایه زبان برنامه‌نویسی پایتون ساخته شده، درک قدرت پایتون در علم داده و تحلیل داده‌ها اهمیت زیادی دارد.

پایتون که در سال ۱۹۹۱ معرفی شد، به یکی از محبوب‌ترین زبان‌ها در توسعه وب، تحلیل داده و یادگیری ماشین تبدیل شده است. سادگی و خوانایی بالای سینتکس آن، به کاربران تازه‌کار و حرفه‌ای کمک می‌کند تا به‌جای درگیر شدن با پیچیدگی‌های زبان‌های سطح پایین، روی حل مسائل تمرکز کنند. این سادگی با یک اکوسیستم گسترده از کتابخانه‌ها و ابزارهایی مانند pandas، NumPy، Matplotlib و Jupyter تقویت شده است.

رابط برنامه‌نویسی (API) پانداس  از این نقاط قوت پایتون بهره می‌برد و قابلیت‌های قدرتمندی برای دستکاری و تحلیل داده ارائه می‌دهد. توابعی مانند روش‌های str برای عملیات متنی و پشتیبانی از توابع lambda ، به کاربران امکان می‌دهد الگوریتم‌های پیشرفته را به‌طور مستقیم در جریان کاری خود پیاده‌سازی کنند. همچنین، سازگاری pandas با سایر کتابخانه‌هایی مانند NumPy باعث می‌شود که محاسبات عددی به‌سادگی در کنار پردازش داده‌های pandas انجام شود.

اکوسیستم پایتون امکان ارتباط با سیستم‌ها و سرویس‌های خارجی را از طریق APIها فراهم می‌کند و به همین دلیل pandas می‌تواند به‌راحتی در جریان‌های کاری داده‌ای، چه روی سیستم‌های محلی و چه در محیط‌های ابری، ادغام شود. برای مصورسازی داده‌ها، pandas با کتابخانه‌هایی مانند Matplotlib ترکیب می‌شود و نمودارهای شفاف و کاربردی تولید می‌کند.

مستندات رسمی پایتون و pandas منابع ارزشمندی برای یادگیری این زبان و کتابخانه‌های آن محسوب می‌شوند و راهنماهای جامع همراه با نمونه‌کدهای کاربردی ارائه می‌دهند. همراهی این مستندات با ابزارهای تعاملی مانند Jupyter Notebook باعث شده که پایتون به گزینه‌ای محبوب برای توسعه و آزمایش الگوریتم‌های مبتنی بر داده تبدیل شود.

با ترکیب انعطاف‌پذیری برنامه‌نویسی پایتون، قدرت کتابخانه‌هایی مانند پانداس و NumPy و ابزارهای تجسم‌سازی مانند Matplotlib، این زبان محیطی یکپارچه برای حل چالش‌های پیچیده داده‌ای فراهم می‌کند.

انواع داده (Data Types) در پانداس و پایتون

دیتاتایپ‌ها (Data types) یا به عبارت دقیق‌تر در فارسی “انواع داده” یا “گونه‌های داده”، از مفاهیم اساسی در برنامه‌نویسی و تحلیل داده هستند. آن‌ها تعیین می‌کنند که داده‌ها چگونه در حافظه ذخیره شوند، چه عملیاتی روی آن‌ها قابل انجام است و چگونه پردازش شوند.

کتابخانه پانداس (Pandas) در پایتون، مجموعه‌ای از انواع داده را ارائه می‌دهد که با هدف بهینه‌سازی حافظه، سرعت و کارایی طراحی شده‌اند. این انواع داده برای کار با مجموعه‌های بزرگ داده بسیار مهم هستند، زیرا انتخاب نوع داده مناسب می‌تواند تأثیر قابل توجهی بر عملکرد و مصرف منابع داشته باشد. از سوی دیگر، دیتاتایپ‌های متفاوت پانداس، محدودیت‌های پایتون را نیز پشت سر گذاشته‌ که در جدول زیر می‌توانید آن را ببینید:

انواع داده در پانداسداده مشابه در پایتونکاربرد و توضیحات
objectstr, objectبرای ذخیره‌سازی رشته‌ها، مقادیر مختلط و هر نوع داده‌ای که نوع دیگری ندارد. برای داده‌های متنی و داده‌های ناهمگون استفاده می‌شود.
int64intبرای ذخیره‌سازی اعداد صحیح استفاده می‌شود. در تحلیل‌های آماری، شمارش تعداد موارد و شاخص‌گذاری کاربرد دارد.
float64floatبرای ذخیره‌سازی اعداد اعشاری با دقت مضاعف. در محاسبات علمی، آماری و مالی که نیاز به دقت اعشاری دارند استفاده می‌شود.
boolboolبرای ذخیره‌سازی مقادیر منطقی (درست/نادرست). در فیلتر کردن داده‌ها، شرط‌های منطقی و ستون‌های وضعیت کاربرد دارد.
datetime64datetime.datetimeبرای ذخیره‌سازی تاریخ و زمان. در تحلیل‌های زمانی، سری‌های زمانی و گزارش‌گیری بر اساس زمان استفاده می‌شود.
timedelta64datetime.timedeltaبرای نگهداری فاصله‌های زمانی. در محاسبه اختلاف بین دو زمان، اندازه‌گیری مدت زمان فرایندها و محاسبات مربوط به دوره زمانی کاربرد دارد.
categoryبرای داده‌های طبقه‌بندی شده با تعداد مقادیر محدود. این دیتاتایپ حافظه کمتری مصرف می‌کند و در داده‌های نامی (اسمی) مانند جنسیت، وضعیت تأهل و رنگ کاربرد دارد.
stringstrنسخه بهینه‌شده پانداس برای رشته‌ها که با کارایی بهتر نسبت به object برای داده‌های متنی کار می‌کند.
Int64 (با I بزرگ)intنسخه پیشرفته int64 که مقادیر NaN (داده‌های گمشده) را نیز پشتیبانی می‌کند.
Float64 (با F بزرگ)floatنسخه پیشرفته float64 که با داده‌های گمشده سازگارتر است.
complex128complexبرای اعداد مختلط استفاده می‌شود. در محاسبات مهندسی، پردازش سیگنال و فیزیک کاربرد دارد.
Periodبرای نمایش دوره‌های زمانی مانند سال، ماه یا روز. در گزارش‌گیری دوره‌ای و تحلیل‌های فصلی استفاده می‌شود.
Intervalبرای نمایش بازه‌های عددی. در طبقه‌بندی داده‌ها به گروه‌های مشخص و ایجاد هیستوگرام‌ها کاربرد دارد.
Sparseبرای ذخیره‌سازی کارآمد ماتریس‌های تنک (با مقادیر صفر زیاد). در داده‌های بزرگ با مقادیر صفر فراوان مانند ماتریس‌های همبستگی و داده‌های متنی کاربرد دارد.

پانداس به طور خودکار نوع داده را تشخیص می‌دهد اما گاهی نیاز به تبدیل دستی با متد astype() وجود دارد.

 

چگونه کار با پانداس را شروع کنیم؟

نصب پانداس

نصب این کتابخانه ساده است و می‌توانید از دستور pip برای نصب استفاده کنید.

				
					pip install pandas
				
			

راه دیگر، نصب آن از طریق conda است:

				
					conda install pandas
				
			

راه دیگر، نصب آن از طریق conda است:

				
					conda install pandas
				
			

پس از نصب Pandas، می‌توانید با بررسی نسخه نصب شده، مطمئن شوید که همه چیز درست کار می‌کند:

				
					import pandas as pd
print(pd.__version__)  # Prints the pandas version
				
			

این کد تایید می‌کند که Pandas به درستی نصب شده و به شما امکان می‌دهد که سازگاری با بسته‌های دیگر را بان آن بررسی کنید.

ورود داده‌ها به Pandas

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

				
					import pandas as pd
				
			

وارد کردن فایل‌های CSV

با دستور read_csv می‌توانید فایل‌های CSV را به فراخوانی کنید:

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

این کد فایل‌های CSV را بارگیری می‌کند و آن را یک DataFrame می‌ریزد.

وارد کردن فایل‌های متنی (Text)

خواندن فایل‌های متنی مشابه خواندن فایل‌های CSV است، با این تفاوت که باید جداکننده (separator) را مشخص کنید، همان‌طور که در مثال زیر نشان داده شده است. آرگومان sep مشخص می‌کند که چه نمادی برای جدا کردن مقادیر در یک DataFrame استفاده شده است. برخی از رایج‌ترین جداکننده‌ها عبارت‌اند از:

  • کاما (,) → sep=","
  • فاصله سفید (یک یا چند فاصله) → sep="\s"
  • تب (\t) → sep="\t"
  • دو نقطه (:) → sep=":"

در اینجا، \s نشان‌دهنده یک کاراکتر فاصله سفید (space character) است.

				
					df = pd.read_csv("example_data.txt", sep="\s")
				
			

وارد کردن فایل‌های فایل اکسل (تک شیت)

خواندن فایل های اکسل (هر دو XLS و XLSX) به آسانی با یک تابع و آدرس‌دهی فایل قابل انجام است: input.read_excel

				
					df = pd.read_excel('example_data.xlsx')
				
			

می‌توانید آرگومان‌های دیگری را نیز مشخص کنید، مانند header برای تعیین اینکه کدام سطر به عنوان هدر (Header) یا نام ستون‌های DataFrame در نظر گرفته شود. مقدار پیش‌فرض این آرگومان ۰ است، که به این معنی است که سطر اول به عنوان نام ستون‌ها استفاده می‌شود. همچنین می‌توانید نام ستون‌ها را به‌صورت یک لیست در آرگومان names مشخص کنید. اگر فایل شامل یک ایندکس ردیفی باشد، می‌توان از آرگومان index_col (که مقدار پیش‌فرض آن None است) استفاده کرد.

نکته: در pandas، ایندکس (Index) یک شناسه‌ی منحصربه‌فرد است که موقعیت یک سطر یا ستون را در یک DataFrame مشخص می‌کند. به بیان ساده، ایندکس برچسبی برای ردیف‌ها یا ستون‌ها است که به شما اجازه می‌دهد یک سطر یا ستون خاص را با استفاده از ایندکس آن بازیابی کنید (در ادامه بیشتر با این موضوع آشنا خواهید شد).

ایندکس سطرها در یک DataFrame می‌تواند به شکل‌های مختلفی باشد، از جمله:

  • یک بازه عددی (مثلاً از ۰ تا ۳۰۳)
  • یک سری زمانی (تاریخ یا برچسب‌های زمانی)
  • یک شناسه‌ی منحصربه‌فرد (مثلاً در یک جدول اطلاعات کارمندان، employee_ID)
  • یا انواع دیگر داده‌ها

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

وارد کردن فایل‌های اکسل (چند شیتی)

خواندن فایل‌های Excel که شامل چندین Sheet (برگه) هستند، تفاوت چندانی با فایل‌های دیگر ندارد. تنها تفاوت این است که باید یک آرگومان اضافه به نام sheet_name را مشخص کنید.

  • می‌توانید یک رشته متنی (برای نام برگه) یا یک عدد صحیح (برای موقعیت برگه) به این آرگومان بدهید.
  • نکته: پایتون از ایندکس صفر (۰) استفاده می‌کند، یعنی اولین برگه در فایل Excel را می‌توان با مقدار sheet_name = 0 مشخص کرد.
				
					# Extracting the second sheet since Python uses 0-indexing
df = pd.read_excel('example_data_multi.xlsx', sheet_name=1)
				
			

وارد کردن داده از پایگاه داده‌های SQL

برای بارگذاری داده از یک پایگاه داده رابطه‌ای (Relational Database)، از pd.read_sql همراه با یک اتصال به پایگاه داده استفاده کنید:

				
					import sqlite3

# Establish a connection to an SQLite database
conn = sqlite3.connect("my_database.db")

# Read data from a table
df = pd.read_sql("SELECT * FROM my_table", conn)
				
			

نکته: اگر مجموعه داده بسیار بزرگی دارید، توصیه می‌شود از SQLAlchemy برای بهینه‌سازی پرس‌وجوها (queries) استفاده کنید.

وارد کردن داده از یک API (فرمت JSON)

اگر داده‌های شما از یک API تحت وب دریافت می‌شوند، pandas می‌تواند مستقیماً آن را با pd.read_json بخواند:

				
					df = pd.read_json("https://api.example.com/data.json")
				
			

خروجی گرفتن از داده‌ها

همان‌طور که pandas می‌تواند داده‌ها را از انواع فایل‌ها وارد کند، امکان ذخیره داده‌ها در فرمت‌های مختلف را نیز فراهم می‌کند. این قابلیت زمانی مفید است که داده‌ها پس از پردازش نیاز به ذخیره‌سازی محلی داشته باشند. در ادامه نحوه ذخیره DataFrameها در فرمت‌های مختلف آورده شده است.

ذخیره یک DataFrame در فایل CSV
برای ذخیره یک DataFrame در فایل CSV، از متد to_csv استفاده کنید. این متد نام فایل و مسیر ذخیره را دریافت می‌کند.

				
					df.to_csv("output.csv", index=False)
				
			

نکته: آرگومان index=True تعیین می‌کند که ایندکس‌های DataFrame نیز در فایل CSV ذخیره شوند.

ذخیره یک DataFrame در فایل متنی (TXT)
برای ذخیره یک DataFrame در فایل متنی، مانند CSV، از متد to_csv استفاده کنید. تنها تفاوت این است که باید فرمت فایل را txt قرار دهید و یک جداکننده (separator) مشخص کنید:

				
					df.to_csv("output.txt", sep="\t")
				
			

ذخیره یک DataFrame در فایل اکسل
برای ذخیره DataFrame در یک فایل اکسل، از متد to_excel استفاده کنید. این متد از فرمت‌های xls و xlsx پشتیبانی می‌کند:

				
					df.to_excel("output.xlsx")
				
			

مشاهده DataFrameها در pandas

پس از خواندن داده‌های جدولی در قالب DataFrame، ممکن است نیاز داشته باشید یک نمای کلی از داده‌ها داشته باشید. می‌توانید با نمایش نمونه‌ای کوچک از مجموعه داده یا مشاهده خلاصه‌ای از داده‌ها، اطلاعات لازم را به‌دست آورید.

مشاهده داده‌ها با .head() و .tail()

برای مشاهده چند سطر ابتدایی یا چند سطر انتهایی یک DataFrame، می‌توانید به ترتیب از متدهای .head() و .tail() استفاده کنید. تعداد سطرها را می‌توان با آرگومان n مشخص کرد (مقدار پیش‌فرض 5 است).

				
					df.head(10)  # نمایش ۱۰ سطر اول  
df.tail(5)   # نمایش ۵ سطر آخر
				
			

Pandas (df.head())

همانطور که در دستورات بالا دیدید، شروع کار با پانداس بسیار ساده و سریع است. تنها با چند خط کد می‌توان آن را نصب کرد، داده‌ها را از فرمت‌های مختلف مانند CSV، اکسل یا پایگاه‌های داده وارد کرد و پس از پردازش، در قالب‌های موردنظر استخراج نمود. از امکانات متنوع این کتابخانه، مانند فیلتر کردن داده‌ها، مرتب‌سازی، ترکیب جداول و تبدیل داده‌ها، می‌توان برای تحلیل‌های پیچیده و مصورسازی استفاده کرد.

جمع‌بندی

پانداس یکی از قدرتمندترین ابزارهای تحلیل داده در پایتون است که به دلیل سادگی، انعطاف‌پذیری و کارایی بالا، به انتخاب اول متخصصان داده، پژوهشگران و حتی مدیران کسب‌وکار تبدیل شده است. این کتابخانه امکان پردازش، تمیزسازی و تحلیل سریع داده‌ها را فراهم می‌کند و در کنار دیگر ابزارهای پایتون، جریان کاری تحلیل داده را به شکل چشمگیری بهبود می‌بخشد.

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

منابع:

Nvidia: What Is pandas?
datacamp: Python pandas Tutorial: The Ultimate Guide for Beginners

دیدگاه‌ها

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

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

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors