מדריך פנדון פנדה: למד פנדות לניתוח נתונים



במדריך זה של פייתון פנדה תלמד את הפעולות השונות של פנדה. הוא כולל גם מקרה שימוש בו תוכלו לנתח את הנתונים באמצעות פנדות.

בבלוג זה נדון בניתוח נתונים באמצעות פנדות בפייתון.היום, היא מיומנות חמה בענף שעברה על PHP בשנת 2017 ו- C # בשנת 2018 מבחינת הפופולריות והשימוש הכללי.לפני שמדברים על פנדות, חייבים להבין את הרעיון של מערכים Numpy. למה? מכיוון ש- Pandas היא ספריית תוכנת קוד פתוח שנבנית על גבי . במדריך זה של פייתון פנדה, אעביר אותך דרך הנושאים הבאים שישמשו יסודות לבלוגים הקרובים:

בואו נתחיל. :-)





מה זה פנדה פנדה?

פנדות משמשות למניפולציה, ניתוח וניקוי נתונים. פנדות פיתון מתאימות היטב לסוגים שונים של נתונים, כגון:

  • נתונים טבלאיים עם עמודות שהוקלדו הטרוגנית
  • נתוני סדרות זמן מסודרים ולא מסודרים
  • נתוני מטריצה ​​שרירותיים עם תוויות שורה ועמודות
  • נתונים ללא תווית
  • כל צורה אחרת של מערכי נתונים תצפיתיים או סטטיסטיים

כיצד להתקין פנדות?

להתקנת Python Pandas, עבור לשורת הפקודה / מסוף והקלד 'pip install pandas' או אחרת, אם התקנת אנקונדה במערכת שלך, פשוט הקלד 'conda install pandas'. לאחר סיום ההתקנה, עבור אל IDE שלך (Jupyter, PyCharm וכו ') ופשוט ייבא אותו על ידי הקלדה: 'ייבא פנדות כ- pd'



נעבור קדימה בהדרכה של פנדון פנדון, בואו נסתכל על כמה מפעולותיה:

פעולות פיתון פנדה

באמצעות פנדות של פייתון, אתה יכול לבצע פעולות רבות עם סדרות, מסגרות נתונים, נתונים חסרים, קבוצה לפי וכו '. חלק מהפעולות הנפוצות למניפולציות נתונים מפורטות להלן:



PandasOperations - Python Pandas Tutorial - Edureka

system.exit (1) java

עכשיו, הבה נבין את כל הפעולות הללו אחת אחת.

חיתוך מסגרת הנתונים

על מנת לבצע חיתוך על נתונים, אתה זקוק למסגרת נתונים. אל דאגה, מסגרת נתונים היא מבנה נתונים דו מימדי ואובייקט פנדה נפוץ ביותר. אז ראשית, בואו ליצור מסגרת נתונים.

עיין בקוד שלהלן ליישומו ב- PyCharm:

יבוא פנדות כ- pd XYZ_web = {'יום': [1,2,3,4,5,6], 'מבקרים': [1000, 700,6000,1000,400,350], 'Bounce_Rate': [20,20, 23,15,10,34]} df = pd.DataFrame (XYZ_web) הדפס (df)

תְפוּקָה :

מבקרים ביום Bounce_Rate 0 20 1 1000 1 20 2 700 2 23 3 6000 3 15 4 1000 4 10 5 400 5 34 6 350

הקוד שלעיל ימיר מילון למסגרת נתונים של פנדה יחד עם אינדקס משמאל. עכשיו, בואו נתח עמודה מסוימת ממסגרת הנתונים הזו. עיין בתמונה למטה:

הדפס (df.head (2))

תְפוּקָה:

מבקרים ביום Bounce_Rate 0 20 1 1000 1 20 2 700

באופן דומה, אם ברצונך בשתי השורות האחרונות של הנתונים, הקלד את הפקודה למטה:

הדפס (זנב זנב (2))

תְפוּקָה:

מבקרים ביום Bounce_Rate 4 10 5 400 5 34 6 350

הבא במדריך של פייתון פנדה, בואו לבצע מיזוג והצטרפות.

מיזוג והצטרפות

במיזוג ניתן למזג שתי מסגרות נתונים כדי ליצור מסגרת נתונים אחת. תוכלו גם להחליט אילו עמודות תרצו להפוך למשותף. תן לי ליישם את זה באופן מעשי, ראשית אצור שלוש מסגרות נתונים, שיש בהן כמה זוגות-ערך מפתח ואז למזג את מסגרות הנתונים יחד. עיין בקוד להלן:

HPI IND_GDP Int_Rate 0 80 50 2 1 90 45 1 2 70 45 2 3 60 67 3

תְפוּקָה:

ייבא פנדות כ- pd df1 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP': [50,45,45, 67]}, אינדקס = [2001, 2002,2003,2004]) df2 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3] , 'IND_GDP': [50,45,45,67]}, אינדקס = [2005, 2006,2007,2008]) מוזג = pd.merge (df1, df2) הדפס (מיזוג)

כפי שניתן לראות לעיל, שתי מסגרות הנתונים התמזגו למסגרת נתונים אחת. כעת, תוכל גם לציין את העמודה שברצונך להפוך למשותף. לדוגמא, אני רוצה שהעמודה 'HPI' תהיה נפוצה ועל כל השאר אני רוצה עמודות נפרדות. אז תן לי ליישם זאת באופן מעשי:

df1 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP': [50,45,45,67]}, אינדקס = [2001, 2002,2003,2004]) df2 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP' : [50,45,45,67]}, אינדקס = [2005, 2006,2007,2008]) מוזג = pd.merge (df1, df2, on = 'HPI') הדפסה (מוזגה)

תְפוּקָה:

IND_GDP Int_Rate Low_Tier_HPI אבטלה 2001 50 2 50.0 1.0 2002 45 1 NaN NaN 2003 45 2 45.0 3.0 2004 67 3 67.0 5.0 2004 67 3 34.0 6.0

לאחר מכן, תן לנו להבין הִצטָרְפוּת בהדרכת פנדה פנדות. זוהי שיטה נוחה נוספת לשלב שתי מסגרות נתונים באינדקס שונה לכדי מסגרת נתונים תוצאתית אחת. זה די דומה לפעולת 'מיזוג', למעט פעולת ההצטרפות תהיה ב'אינדקס 'במקום ב'עמודות'. תן לנו ליישם את זה באופן מעשי.

df1 = pd.DataFrame ({'Int_Rate': [2,1,2,3], 'IND_GDP': [50,45,45,67]}, אינדקס = [2001, 2002,2003,2004]) df2 = pd.DataFrame ({'Low_Tier_HPI': [50,45,67,34], 'אבטלה': [1,3,5,6]}, אינדקס = [2001, 2003,2004,2004]) הצטרף = df1. הצטרף (df2) הדפס (הצטרף)

תְפוּקָה:

IND_GDP Int_Rate Low_Tier_HPI אבטלה 2001 50 2 50.0 1.0 2002 45 1 NaN NaN 2003 45 2 45.0 3.0 2004 67 3 67.0 5.0 2004 67 3 34.0 6.0

כפי שניתן להבחין בתפוקה הנ'ל, בשנת 2002 (אינדקס), אין ערך המצורף לעמודות 'low_tier_HPI' ו- 'אבטלה', ולכן הוא הדפיס NaN (Not a Number). מאוחר יותר בשנת 2004, שני הערכים זמינים, ולכן הוא הדפיס את הערכים המתאימים.

תוכלו לעבור על ההקלטה הזו של הדרכת פייתון פנדה, שם המדריך שלנו הסביר את הנושאים בצורה מפורטת עם דוגמאות שיעזרו לכם להבין טוב יותר את המושג הזה.

פייתון לניתוח נתונים מדריך פנדה פנדה | אימון פיתון | אדוריקה


קדימה במדריך של פנדה פנדון, הבה ונבין כיצד לשרשר שתי מסגרות נתוני נתונים.

שִׁרשׁוּר

שרשור בעצם מדביק את מסגרות הנתונים. אתה יכול לבחור את הממד עליו ברצונך לשרשר. לשם כך, פשוט השתמש ב- 'pd.concat' והעביר ברשימת מסגרות הנתונים לשרשור יחד. שקול את הדוגמה הבאה.

df1 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP': [50,45,45,67]}, אינדקס = [2001, 2002,2003,2004]) df2 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP' : [50,45,45,67]}, אינדקס = [2005, 2006,2007,2008]) concat = pd.concat ([df1, df2]) הדפס (concat)

תְפוּקָה:

HPI IND_GDP Int_Rate 2001 80 50 2 2002 90 45 1 2003 70 45 2 2004 60 67 3 2005 80 50 2 2006 90 45 1 2007 70 45 2 2008 60 67 3

כפי שניתן לראות לעיל, שני מסגרות הנתונים מודבקות זו לזו במסגרת נתונים אחת, כאשר האינדקס מתחיל משנת 2001 עד לשנת 2008. לאחר מכן, ניתן גם לציין ציר = 1 על מנת להצטרף, למזג או לבטל לאורך העמודות. עיין בקוד להלן:

df1 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP': [50,45,45,67]}, אינדקס = [2001, 2002,2003,2004]) df2 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP' : [50,45,45,67]}, אינדקס = [2005, 2006,2007,2008]) concat = pd.concat ([df1, df2], ציר = 1) הדפס (concat)

תְפוּקָה:

HPI IND_GDP Int_Rate HPI IND_GDP Int_Rate 2001 80.0 50.0 2.0 NaN NaN NaN 2002 90.0 45.0 1.0 NaN NaN NaN 2003 70.0 45.0 2.0 NaN NaN NaN 2004 60.0 67.0 3.0 NaN NaN NaN 2005 NaN NaN NaN 80.0 50.0 2.0 2006 NaN NaN NaN 90.0 45.0 1.0 2007 NaN NaN NaN 70.0 45.0 2.0 2008 NaN NaN NaN 60.0 67.0 3.0

כפי שאתה יכול לעיל, יש הרבה ערכים חסרים. זה קורה מכיוון שבמסגרות הנתונים לא היו ערכים עבור כל האינדקסים שאתה מעוניין לשרשר עליהם. לכן, עליך לוודא כי כל המידע עומד בשורה נכונה כאשר אתה מצטרף או משתרך על הציר.

שנה את האינדקס

הבא במדריך פנדה פנדות, נבין כיצד לשנות את ערכי האינדקס במסגרת נתונים. לדוגמא, בואו ניצור מסגרת נתונים עם כמה צמדי ערכי מפתח במילון ונשנה את ערכי האינדקס. שקול את הדוגמה הבאה:

בואו נראה איך זה קורה בפועל:

כיצד להתקין אטום לפייתון
ייבא פנדות כ- pd df = pd.DataFrame ({'יום': [1,2,3,4], 'מבקרים': [200, 100,230,300], 'Bounce_Rate': [20,45,60,10]}) df.set_index ('Day', inplace = True) הדפס (df)

תְפוּקָה:

יום מבקרים Bounce_Rate יום 1 20 200 2 45 100 3 60 230 4 10 300

כפי שניתן להבחין בפלט לעיל, ערך האינדקס שונה ביחס לעמודה 'יום'.

שנה את כותרות העמודות

בואו נשנה כעת את כותרות העמודות במדריך זה של פנדה פנדון. הבה ניקח את אותה הדוגמה, בה אשנה את כותרת העמודה מ'מבקרים 'ל'משתמשים'. אז תנו לי ליישם את זה באופן מעשי.

ייבא פנדות כ- pd df = pd.DataFrame ({'יום': [1,2,3,4], 'מבקרים': [200, 100,230,300], 'Bounce_Rate': [20,45,60,10]}) df = df.rename (עמודות = {'מבקרים': 'משתמשים'}) הדפס (df)

תְפוּקָה:

משתמשי יום Bounce_Rate יום 0 20 1 200 1 45 2100 2 60 3 230 3 10 4 300

כפי שאתה רואה לעיל, כותרת העמודה 'מבקרים' שונתה ל'משתמשים '. הבא במדריך של פנדה פנדון, תן לנו לבצע אימות נתונים.

נתונים Munging

ב- Data munging, אתה יכול להמיר נתונים מסוימים לפורמט אחר. לדוגמה, אם יש לך קובץ .csv, אתה יכול להמיר אותו ל- .html או לכל פורמט נתונים אחר גם כן. אז תנו לי ליישם זאת באופן מעשי.

ייבא פנדות כמדינה pd = pd.read_csv ('D: UsersAayushiDownloadsworld-bank-youth -employmentAPI_ILO_country_YU.csv', index_col = 0) country.to_html ('edu.html')

לאחר הפעלת קוד זה, ייווצר קובץ HTML בשם 'edu.html'. באפשרותך להעתיק ישירות את נתיב הקובץ ולהדביק אותו בדפדפן שלך המציג את הנתונים בפורמט HTML. עיין בצילום המסך שלהלן:


הבא במדריך של פנדה פנדות, בואו נסתכל על מקרה שימוש המדבר על אבטלת הנוער העולמית.

הדרכת פייתון פנדה: השתמש במקרה לניתוח נתוני אבטלת הנוער

הצהרת בעיה :אתה מקבל מערך נתונים אשר כולל אחוז הנוער המובטל ברחבי העולם בין השנים 2010 ל 2014. עליכם להשתמש במערך הנתונים הזה ולמצוא את השינוי באחוז בני הנוער בכל מדינה בין השנים 2010-2011.

ראשית, הבה נבין את מערך הנתונים המכיל את העמודות כשם מדינה, קוד מדינה ואת השנה משנת 2010 עד 2014. כעת, באמצעות פנדות, נשתמש ב- 'pd.read_csv' כדי לקרוא את קובץ פורמט הקובץ .csv.
עיין בצילום המסך למטה:

הבה נתקדם ונבצע ניתוח נתונים בו אנו מתכוונים לגלות את אחוז השינוי בקרב הצעירים הבלתי מועסקים בין השנים 2010 ל 2011. ואז נראה את אותו הדבר באמצעות ספרייה, שהיא ספרייה חזקה להדמיה בפייתון. ניתן להשתמש בו בסקריפטים של פייתון, מעטפת, שרתי יישומי אינטרנט וערכות כלים אחרות של ממשק המשתמש. אתה יכול להשתמש לקרוא עוד כאן:

עכשיו, בואו ניישם את הקוד ב- PyCharm:

ייבוא ​​פנדות כ- pd ייבא matplotlib.pyplot כ- plt מ matplotlib ייבוא ​​style.use ('fivethirtyeight') מדינה = pd.read_csv ('D: UsersAayushiDownloadsworld-bank-youth -employmentAPI_ILO_country_YU.csv', index_col = 0) df. ראש (5) df = df.set_index (['' קוד מדינה ']) sd = sd.reindex (עמודות = [' 2010 ',' 2011 ']) db = sd.diff (axis = 1) db.plot (סוג = 'סרגל') plt.show ()

כפי שניתן לראות לעיל, ביצעתי את הניתוח בחמש השורות העליונות של מסגרת הנתונים הארץ. לאחר מכן, הגדרתי ערך אינדקס כ- 'קוד מדינה' ואז אינדקס מחדש את העמודה לשנים 2010 ו- 2011. לאחר מכן, יש לנו עוד db-frame db, המדפיס את ההבדל בין שתי העמודות או את אחוז השינוי של צעירים מובטלים. משנת 2010 ועד 2011. לבסוף, זממתי ברפלוט באמצעות ספריית Matplotlib בפייתון.


כעת אם שמתם לב במזימה לעיל, באפגניסטן (AFG) בין 2010 ל 2011, חלה עלייה בקרב צעירים מובטלים של כ-. 0.25%. ואז באנגולה (AGO) יש מגמה שלילית שמשמעותה שאחוז הצעירים המובטלים צומצם. באופן דומה, ניתן לבצע ניתוח על קבוצות נתונים שונות.

אני מקווה שהבלוג שלי בנושא 'הדרכת פנדון פנדה' היה רלוונטי עבורך. כדי לקבל ידע מעמיק על פיתון יחד עם היישומים השונים שלו, אתה יכול להירשם לשידור חי מאת אדוריקה עם תמיכה 24/7 וגישה לכל החיים.

העמסת יתר על השיטה וג'אווה

יש לך שאלה עבורנו? אנא הזכיר זאת בקטע ההערות בבלוג זה 'הדרכת פנדון פנדה' ונחזור אליך בהקדם האפשרי.