logo

numpy.unique() ב-Python

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

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

תחביר

 numpy.unique(a, return_index=False, return_inverse=False, return_counts=False, axis=None) 

פרמטרים

אלו הם הפרמטרים הבאים בפונקציה numpy.mean():

a: array_like

פרמטר זה מגדיר את מערך המקור המכיל אלמנטים שהערכים הייחודיים שלהם רצויים. המערך ישטוח אם הוא לא מערך 1-D.

Return_index: bool (אופציונלי)

אמר מדורי

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

return_inverse: bool (אופציונלי)

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

Return_counts: bool (אופציונלי)

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

ציר: int או None (אופציונלי)

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

החזרות

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

ייחודי: ndarray

להסיר את התו הראשון באקסל

בפלט זה, יוצג ndarray המכיל ערכים ייחודיים ממוינים.

ייחודי_מדדים: ndarray (אופציונלי)

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

unique_inverse: ndarray(אופציונלי)

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

unique_counts: ndarray (אופציונלי)

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

מיון רשימה לפי Java

דוגמה 1:

 import numpy as np a=np.unique([1,2,3,4,3,6,2,4]) a 

תְפוּקָה:

 array([1, 2, 3, 4, 6]) 

בקוד למעלה

  • ייבאנו numpy עם שם הכינוי np.
  • הכרזנו על המשתנה 'a' והקצנו את הערך המוחזר של הפונקציה np.unique() .
  • עברנו את מספר האלמנטים בפונקציה.
  • לבסוף, ניסינו להדפיס את הערך של 'a'.

בפלט, הוצג ndarray, המכיל אלמנטים ייחודיים.

דוגמה 2:

 a=np.array([[1,2,2,3,9],[1,4,3,5,8]]) a b=np.unique(a) b 

תְפוּקָה:

משתנים גלובליים js
 array([[1, 2, 2, 3, 9], [1, 4, 3, 5, 8]]) array([1, 2, 3, 4, 5, 8, 9]) 

דוגמה 3:

 import numpy as np a = np.array([[1, 1, 0], [1, 1, 0], [2, 3, 4],[5, 9, 8],[2, 3, 4]]) a b=np.unique(a, axis=0) b 

תְפוּקָה:

 array([[1, 1, 0], [1, 1, 0], [2, 3, 4], [5, 9, 8], [2, 3, 4]]) array([[1, 1, 0], [2, 3, 4], [5, 9, 8]]) 

בקוד למעלה

  • ייבאנו numpy עם שם הכינוי np.
  • יצרנו מערך רב מימדי 'a'.
  • הכרזנו על המשתנה 'b' והקצנו את הערך המוחזר של הפונקציה np.unique() .
  • העברנו את המערך הרב-ממדי 'a' ואת הציר כ-0 בפונקציה.
  • לבסוף, ניסינו להדפיס את הערך של 'b'.

בפלט, הוצג ndarray המכיל שורות ייחודיות של מערך המקור 'a'.

דוגמה 4:

 import numpy as np a = np.array([[1, 1, 0], [1, 1, 0], [2, 2, 4],[5, 5, 8],[2, 2, 4]]) a b=np.unique(a, axis=1) b 

תְפוּקָה:

 array([[1, 1, 0], [1, 1, 0], [2, 2, 4], [5, 5, 8], [2, 2, 4]]) array([[0, 1], [0, 1], [4, 2], [8, 5], [4, 2]]) 

הערה: כאשר אנו מגדירים את הציר כ-1 אז פונקציה זו מחזירה את העמודות הייחודיות ממערך המקור.

דוגמה 5: השתמש ב- return_index

 import numpy as np a = np.array(['d', 'b', 'b', 'z', 'a']) result, indices=np.unique(a,return_index=True) result indices a[indices] 

תְפוּקָה:

 array(['a', 'b', 'd', 'z'], dtype='|S1') array([4, 1, 0, 3], dtype=int64) array(['a', 'b', 'd', 'z'], dtype='|S1') 

בקוד למעלה

  • ייבאנו numpy עם שם הכינוי np.
  • יצרנו מערך 'a'.
  • הכרזנו על המשתנים 'תוצאה' ו'מדדים' והקצנו את הערך המוחזר של הפונקציה np.unique().
  • העברנו את המערך 'a' והגדרנו return_index ל-True בפונקציה.
  • לבסוף, ניסינו להדפיס את הערך של 'תוצאה', 'מדדים' ואלמנטים של מערך, המציינים את המדדים ('a [מדדים]').

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

דוגמה 6: השתמש ב- return_inverse

נוכל לשחזר את מערך הקלט מהערכים הייחודיים בדרך הבאה:

 import numpy as np a = np.array([1, 2, 6, 4, 5, 3, 2]) result, indices=np.unique(a,return_inverse=True) result indices a[indices] 

תְפוּקָה:

 array([1, 2, 3, 4, 5, 6]) array([0, 1, 5, 3, 4, 2, 1], dtype=int64) array([1, 2, 3, 4, 5, 6, 2])