در سال 2008، توسعه کتابحانه پانداس آغاز شد. تا پایان سال 2009 منبع باز(open source) بود، و امروزه به طور فعال توسط جامعه ای از افراد همفکر در سراسر جهان که زمان و انرژی ارزشمند خود را برای کمک به ایجاد کتابخانه پانداس منبع باز(open source) به اشتراک می گذارند، حمایت می شود.
از سال 2015، پانداس یک پروژه تحت حمایت NumFOCUS است. این امر به اطمینان از موفقیت توسعه پانداها به عنوان یک پروژه منبع باز در سطح جهانی کمک می کند.
پانداها یک کتابخانه نرمافزاری نوشته شده برای زبان برنامهنویسی پایتون برای دستکاری و تجزیه و تحلیل داده میباشد . به طور خاص ، کتابخانه پانداس ساختارها و عملیات هایی برای دستکاری جداول و سریهای زمانی را ارایه میدهد . این نرمافزار رایگان است که تحت مجوز بیاسدی (BSD) منتشر شدهاست . نام این نام برگرفته از عبارت ” دادههای پانل ” ، عبارت econometrics (استفاده از روشای اماری در بررسی مسایل اقتصادی) برای مجموعه دادهها است که مشاهدات را در طول چندین دوره زمانی برای افراد ثابت را شامل میشوند .
پانداس عمدتا برای آنالیز دادهها و دستکاری در دادههای جدولی در Dataframes بکار میرود . پانداس اجازه وارد کردن دادهها از فرمتهای فایلی مختلف مانند (CSV) ، JSON ، Parquet ، جداول پایگاهداده SQL یا queries , و مایکروسافت اکسل را میدهد . Pandas به دستکاری های مختلفی بروی دادههای مانند ادغام ، تغییر شکل ، انتخاب ، و همچنین تمیز کردن دادهها (data cleaning) و ویژگیهای data wrangling اجازه میدهد . توسعه پانداها (پانداس) بسیاری از ویژگی های قابل مقایسه کار با DataFrames را که در زبان برنامه نویسی R ایجاد شده بودند، به پایتون معرفی کرد. کتابخانه پانداها بر اساس کتابخانه دیگری NumPy ساخته شده است که به جای ویژگی های کار بر روی DataFrames، برای کار موثر با آرایه ها طراحی شده است.
ساختار دادهها در کتابخانه پانداس
کتابخانه پانداس برای ذخیرهسازی دو دسته ساختار داده دارد :
- سری (Series)
- دیتافریم (DataFrame)
قابلیت های پانداس
- ابزارهایی برای خواندن و نوشتن دادهها بین ساختارهای داده درون حافظه و فرمتهای مختلف: CSV و فایلهای متنی، Microsoft Excel، پایگاههای داده SQL و فرمت سریع HDF5.
- برای تغییر اندازه، میتوان ستونها را از ساختارهای داده درج و حذف کرد.
- برای عملکرد بسیار بهینه شدهاست، با مسیرهای کد بحرانی که در Cython یا C نوشته شدهاست.
- پایتون با پانداها در طیف گستردهای از حوزههای دانشگاهی و تجاری، از جمله امور مالی، علوم اعصاب، اقتصاد، آمار، تبلیغات، تجزیه و تحلیل وب و غیره استفاده میشود.
- همکاری با پکیج های بزرگ دیگر مانند Matplotlib برای بصری سازی داده ها: تولید نمودار های مختلف، هیستوگرام ها و الی آخر.
چه موقع از کتابخانه پانداس استفاده کنیم؟
در صورتی که با زبان پایتون آشنا نیستید به سراغ کتابخانه پانداس در پایتون (pandas) اصلا نروید چرا که فقط خودتان را سردرگم می کنید. البته برای کار با پانداس نیاز به یادگیری پایتون در سطح مهندسین نرم افزار ندارید اما باید آشنایی متوسطی با پایتون داشته باشید؛ مثلا انواع داده های tuple یا dictionary و غیره یا آشنایی با مفاهیم توابع و حلقه ها و گردش بین داده ها و امثال آن. آشنایی با این مباحث و داشتن پایه ای نسبتا خوب از برنامه نویسی با پایتون به شما کمک بزرگی در استفاده از پانداس می کند.
معمولا برای استفاده پیشرفته از pandas آن را درون Jupyter Notebooks استفاده می کنند اما شما می توانید از ویرایشگرهای معمولی مانند visual studio code نیز برای میزبانی pandas استفاده کنید. تفاوت ویرایشگرهای عادی کد مانند visual studio code با Jupyter Notebooks در این است که ویرایشگرهای کد معمولا کدهای شما را در واحد فایل اجرا می کنند، یعنی به محض نوشتن و اجرای یک کد پایتون در یک فایل، کل آن کد توسط ویرایشگر اجرا خواهد شد. این در حالی است که Jupyter Notebooks می توانند کدهای شما را به بخش های مختلفی تقسیم کرده و اجرای آن را در سطح این بخش ها انجام بدهند.