logo

numpy.concatenate() ב-Python

הפונקציה concatenate() היא פונקציה מחבילת NumPy. פונקציה זו בעצם משלבת מערכי NumPy יחד. פונקציה זו משמשת בעצם לחיבור שני מערכים או יותר מאותה צורה לאורך ציר מוגדר. יש את הדברים הבאים שחשוב לזכור:

  1. ה-Concatenate() של NumPy אינו כמו צירוף מסד נתונים מסורתי. זה כמו לערום מערכי NumPy.
  2. פונקציה זו יכולה לפעול הן אנכית והן אופקית. זה אומר שאנחנו יכולים לשרשר מערכים יחד אופקית או אנכית.
numpy.concatenate()

הפונקציה concatenate() נכתבת בדרך כלל כ-np.concatenate(), אך נוכל לכתוב אותה גם כ-numpy.concatenate(). זה תלוי בדרך של ייבוא ​​חבילת numpy, ייבוא ​​numpy כ-np או ייבוא ​​numpy, בהתאמה.

תחביר

 numpy.concatenate((a1, a2, ...), axis) 

פרמטרים

1) (a1, a2, ...)

פרמטר זה מגדיר את רצף המערכים. כאן, a1, a2, a3 ... הם המערכים בעלי אותה צורה, למעט הממד המתאים לציר.

מה זה 25 מתוך 100

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

צומת רשימת java

פרמטר זה מגדיר את הציר שלאורכו יצורף המערך. כברירת מחדל, הערך שלו הוא 0.

תוֹצָאָה

זה יחזיר ndarray המכיל את האלמנטים של שני המערכים.

דוגמה 1: numpy.concatenate()

 import numpy as np x=np.array([[1,2],[3,4]]) y=np.array([[12,30]]) z=np.concatenate((x,y)) z 

בקוד למעלה

  • ייבאנו numpy עם שם הכינוי np.
  • יצרנו מערך 'x' באמצעות הפונקציה np.array() .
  • לאחר מכן, יצרנו מערך 'y' נוסף באמצעות אותה פונקציה np.array() .
  • הכרזנו על המשתנה 'z' והקצנו את הערך המוחזר של הפונקציה np.concatenate() .
  • עברנו את המערך 'x' ו-'y' בפונקציה.
  • לבסוף, ניסינו להדפיס את הערך של 'z'.

בפלט, הערכים של שני המערכים, כלומר 'x' ו-'y' מוצגים לפי הציר=0.

תְפוּקָה:

בדיקת java היא ריק
 array([[ 1, 2], [ 3, 4], [12, 30]]) 

דוגמה 2: numpy.concatenate() עם axis=0

 import numpy as np x=np.array([[1,2],[3,4]]) y=np.array([[12,30]]) z=np.concatenate((x,y), axis=0) z 

תְפוּקָה:

 array([[ 1, 2], [ 3, 4], [12, 30]]) 

דוגמה 3: numpy.concatenate() עם axis=1

 import numpy as np x=np.array([[1,2],[3,4]]) y=np.array([[12,30]]) z=np.concatenate((x,y.T), axis=1) z 

תְפוּקָה:

 array([[ 1, 2, 12], [ 3, 4, 30]]) 

בדוגמה שלמעלה, ה-'.T' משמש כדי לשנות את השורות לעמודות ועמודות לשורות.

דוגמה 4: numpy.concatenate() עם axis=None

 import numpy as np x=np.array([[1,2],[3,4]]) y=np.array([[12,30]]) z=np.concatenate((x,y), axis=None) z 

תְפוּקָה:

תכנות במערכי c
 array([ 1, 2, 3, 4, 12, 30]) 

בדוגמאות לעיל, השתמשנו בפונקציה np.concatenate() . פונקציה זו אינה נשמרת מיסוך של כניסות MaskedArray. יש את הדרך הבאה שבאמצעותה נוכל לשרשר את המערכים שיכולים לשמר מיסוך של כניסות MaskedArray.

דוגמה 5: np.ma.concatenate()

 import numpy as np x=np.ma.arange(3) y=np.arange(3,6) x[1]=np.ma.masked x y z1=np.concatenate([x,y]) z2=np.ma.concatenate([x,y]) z1 z2 

בקוד למעלה

  • ייבאנו numpy עם שם הכינוי np.
  • יצרנו מערך 'x' באמצעות הפונקציה np.ma.arrange() .
  • לאחר מכן, יצרנו מערך 'y' נוסף באמצעות אותה פונקציה np.ma.arrange() .
  • הכרזנו על המשתנה 'z1' והקצנו את הערך המוחזר של הפונקציה np.concatenate() .
  • הכרזנו על המשתנה 'z2' והקצנו את הערך המוחזר של הפונקציה np.ma.concatenate() .
  • לבסוף, ניסינו להדפיס את הערך של 'z1' ו-'z2'.

בפלט, הערכים של שני המערכים 'z1' ו-'z2' שמרו על המיסוך של קלט MaskedArray.

תְפוּקָה:

 masked_array(data=[0, --, 2], mask=[False, True, False], fill_value=999999) array([3, 4, 5]) masked_array(data=[0, 1, 2, 3, 4, 5], mask=False, fill_value=999999) masked_array(data=[0, --, 2, 3, 4, 5], mask=[False, True, False, False, False, False], fill_value=999999)