למד כיצד למזג מסגרות נתונים ב-Python

למד כיצד למזג מסגרות נתונים ב-Python

אם אתה משתמש ב-Python, אפילו עבור המשימות הפשוטות ביותר, אתה כנראה מודע לחשיבות של ספריות הצד השלישי שלה. ספריית Pandas, עם התמיכה המצוינת שלה ב-DataFrames, היא ספרייה כזו.





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





התמודדות עם היסודות

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





צור את DataFrames ב- Python

כשלב ראשון, ייבא את ספריית Pandas לקובץ Python שלך. Pandas היא ספריית צד שלישי המטפלת ב-DataFrames ב-Python. אתה יכול להשתמש ב יְבוּא הצהרה לשימוש בספרייה, באופן הבא:

import pandas as pd

אתה יכול להקצות כינוי לשם הספרייה כדי לקצר את הפניות הקוד שלך.



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

dict1 = {"user_id": ["001", "002", "003", "004", "005"], 
"FName": ["John", "Brad", "Ron", "Roald", "Chris"],
"LName": ["Harley", "Cohen", "Dahl", "Harrington", "Kerr-Hislop"]}

dict2 = {"user_id": ["001", "002", "003", "004"], "Age": [15, 28, 34, 24]}

זכור, עליך להיות בעל אלמנט משותף בשני ערכי המילון, כדי לשמש כמפתח הראשי לשילוב ה-DataFrames שלך מאוחר יותר.





המר את המילונים שלך ל-DataFrames

כדי להמיר את ערכי המילון שלך ל-DataFrames, אתה יכול להשתמש בשיטה הבאה:

df1 = pd.DataFrame(dict1) 
df2 = pd.DataFrame(dict2)

כמה IDEs מאפשרים לך לבדוק את הערכים בתוך DataFrame על ידי הפניה לפונקציית DataFrame ולחיצה הרץ/ביצוע . יש הרבה IDE תואמי Python , כך שתוכל לבחור ולבחור את זה שהכי קל לך ללמוד.





  קטע קוד של מחברת Jupyter

ברגע שאתה מרוצה מהתוכן של DataFrames שלך, אתה יכול לעבור לשלב המיזוג.

שילוב מסגרות עם פונקציית המיזוג

פונקציית המיזוג היא פונקציית Python הראשונה שבה אתה יכול להשתמש כדי לשלב שני DataFrames. פונקציה זו לוקחת את ארגומנטי ברירת המחדל הבאים:

pd.merge(DataFrame1, DataFrame2, how= type of merge)

איפה:

  • pd הוא כינוי לספריית Pandas.
  • לְמַזֵג היא הפונקציה הממזגת DataFrames.
  • DataFrame1 ו DataFrame2 הם שני DataFrames שיש להתמזג.
  • אֵיך מגדיר את סוג המיזוג.

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

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

מיזוג שמאלי

סוג המיזוג השמאלי שומר על ערכי ה-DataFrame הראשון ללא פגע ומושך את הערכים התואמים מה-DataFrame השני.

  קטע קוד של מחברת Jupyter

מיזוג ימינה

סוג המיזוג הנכון שומר על ערכי ה-DataFrame השני ללא פגע ומושך את הערכים התואמים מה-DataFrame הראשון.

  קטע קוד של מחברת Jupyter

מיזוג פנימי

סוג המיזוג הפנימי שומר על הערכים התואמים משני DataFrames ומסיר ערכים שאינם תואמים.

  קטע קוד של מחברת Jupyter

מיזוג חיצוני

סוג המיזוג החיצוני שומר על כל הערכים התואמים והלא תואמים ומאחד את ה-DataFrames יחד.

איזה פרח זה
  קטע קוד של מחברת Jupyter

כיצד להשתמש בפונקציית Concat

ה קוצר function היא אפשרות גמישה בהשוואה לכמה מפונקציות המיזוג האחרות של Python. עם הפונקציה concat, אתה יכול לשלב DataFrames אנכית ואופקית.

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

concat(dataframes, axis=0, join='outer'/inner)

איפה:

  • קוצר היא הפונקציה שמצטרפת ל-DataFrames.
  • מסגרות נתונים הוא רצף של DataFrames לשרשור.
  • צִיר מייצג את כיוון השרשור, 0 הוא אופקי, 1 הוא אנכי.
  • לְהִצְטַרֵף מציין צירוף חיצוני או פנימי.

באמצעות שני DataFrames לעיל, אתה יכול לנסות את הפונקציה concat באופן הבא:

# define the dataframes in a list format 
df_merged_concat = pd.concat([df1, df2])

# print the results of the Concat function
print(df_merged_concat)

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

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

כדי לשלוט בפלט עם כל הערכים התואמים:

# Concatenating all matching values between the two dataframes based on their columns 
df_merged_concat = pd.concat([df1, df2], axis=1, join = 'inner')

print(df_merged_concat)

התוצאה מכילה את כל הערכים התואמים בין שני DataFrames בלבד.

  קטע קוד של מחברת Jupyter

מיזוג DataFrames עם Python

DataFrames הם חלק בלתי נפרד מ- Python, בהתחשב בגמישות ובפונקציונליות שלהם. בהתחשב בשימושים הרב-גוניים שלהם, אתה יכול להשתמש בהם באופן נרחב כדי לבצע מגוון משימות בקלות מרבית.

אם אתה עדיין לומד על Python DataFrames, נסה לייבא כמה קבצי Excel, ולאחר מכן שלב אותם עם גישות שונות.