Pandas

בתכנות מחשבים, pandas היא ספריית תוכנה שנכתבה עבור שפת התכנות פייתון ומיועדת לניתוח ועיבוד נתונים. בפרט, היא מציעה מבני נתונים ופעולות לעיבוד מבני נתונים נומריים וסדרות עתיות. pandas היא תוכנה חופשית ופורסמה תחת רישיון BSD. השם נגזר מן המונח "panel data", מונח מתחום האקונומטריקה המתייחס למערכי נתונים הכוללים תצפיות על פני מספר תקופות זמן ביחס לאותם פרטים. יצירת אובייקטים בשם DataFrame, המאפשר עריכה וסידור של נתונים בשילוב אינדקס. כלים לקריאה וכתיבת נתונים בין מבני נתונים בזיכרון לבין פורמטים שונים של קבצים. יישור נתונים, חיתוך על פי עמודות או שורות וטיפול מהיר בנתונים חסרים. עיצוב מחדש וסיבוב (pivot) של מערכי נתונים. הכנסה ומחיקה של עמודות מבנה נתונים. פעולות אגרגציה מהירות על הנתונים. מיזוג וצירוף (join) מערכים. פונקציונליות המאפשרות ניתוח סדרות עתיות. כלים לסינון (filter) נתונים. הספרייה מאופיינת בביצועים אופטימליים, כאשר חלקים גדולים ממנה נכתבו ב- Cython או ב-C (שפות תכנות הנחשבות לבעלות יכולות ביצוע מהירות). בנוסף, הספרייה נבנתה על בסיס ספריית NumPy, אשר גם לה יכולות ביצועיות גבוהות. השימוש העיקרי בספריה הוא ניתוח ועריכת נתונים, ובדגש על נתונים המסודרים בטבלאות, באמצעות האובייקט הייחודי לספרייה - DataFrame. באמצעות הספרייה ניתן לייבא נתונים מפורמטים שונים, למשל CSV, JSON, מסדי נתונים או שאילתות SQL ועוד, והפיכתם ל-DataFrame. בפורמט החדש, ניתן בקלות ובמהירות לבצע מניפולציות שונות על מערך הנתונים, כמו מיזוג, עיצוב מחדש, שליפה, ניקוי (הסרת נתונים שאינם רלוונטיים) ועוד. השימוש באובייקט זה הביא לכך שתכונות רבות לניתוחי נתונים, שמקורם בשפת התכנות R, הובאו לשפת פייתון. הספרייה פותחה על ידי וס מקיני, אשר החל לעבוד עליה בשנת 2008. בעודו מועסק בחברת ההשקעות AQR Capital, נדרש וס לכלי שיאפשר לו ניתוח נתונים פיננסיים בעל יכולות ביצועיות גבוהות ובעל גמישות. בטרם עזב את חברת AQR, הצליח לשכנע את ההנהלה לשחרר את pandas לציבור הרחב, כספריית קוד פתוח. 2008: תחילת פיתוח הספרייה. 2009: הספרייה הופכת לספריית קוד פתוח. 2012: פרסום המהדורה הראשונה של הספר Python for Data Analysis, הממוקד בשימוש בספרייה. 2015: הספרייה מקבלת חסות מעמותת NumFOCUS האמריקאית גרף עקומות import pandas as pd import matplotlib.pyplot as plt import numpy as np df = pd.DataFrame(np.random.randn(100, 5), columns=list('ABCDE')) df=df.cumsum() # Return cumulative sum over a DataFrame or Series axis df.plot() plt.show() גרף עמודות df = pd.DataFrame(np.random.rand(10, 5), columns=list('ABCDE')) df.plot.bar(stacked=True) plt.show() McKinney, Wes (2017). Python for Data Analysis : Data Wrangling with Pandas, NumPy, and IPython (2nd ed.). Sebastopol: O'Reilly. ISBN 978-1-4919-5766-0. Chen, Daniel Y. (2018). Pandas for Everyone : Python Data Analysis. Boston: Addison-Wesley. ISBN 978-0-13-454706-0. מדיה וקבצים בנושא Pandas בוויקישיתוף אתר האינטרנט הרשמי של Pandas Pandas, ברשת החברתית אקס (טוויטר) Pandas, הבלוג הרשמי Brooks, Gabriel. "Introduction to Python Pandas for Beginners". Almabetter.com (באנגלית). נבדק ב-2020-10-24. "License – Package overview – pandas 0.21.1 documentation". pandas. 12 בדצמבר 2017. נבדק ב-13 בדצמבר 2017. {{cite web}}: (עזרה) Wes McKinney (2011). "pandas: a Foundational Python Library for Data Analysis and Statistics" (PDF). נבדק ב-2 באוגוסט 2018. {{cite web}}: (עזרה) Wes McKinney (2011). "pandas: a Foundational Python Library for Data Analysis and Statistics" (PDF). נבדק ב-2 באוגוסט 2018. {{cite web}}: (עזרה) "pandas.date_range – pandas 1.0.0 documentation". pandas. 29 בינואר 2020. נבדק ב-30 בינואר 2020. {{cite web}}: (עזרה) "Python Data Analysis Library – pandas: Python Data Analysis Library". pandas. נבדק ב-13 בנובמבר 2017. {{cite web}}: (עזרה) "IO tools (Text, CSV, HDF5, …) — pandas 1.4.1 documentation". "Merge, join, concatenate and compare — pandas 1.4.1 documentation". "Reshaping and pivot tables — pandas 1.4.1 documentation". "Indexing and selecting data — pandas 1.4.1 documentation". "pandas - Python Data Analysis Library". pandas.pydata.org. נבדק ב-2021-09-29. "NumFOCUS – pandas: a fiscally sponsored project". NumFOCUS. נבדק ב-3 באפריל 2018. {{cite web}}: (עזרה)