logo

numpy.ravel() ב-Python

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

תחביר:

 numpy.ravel(x, order='C') 

פרמטרים:

x: array_like

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

סדר: {'C','F', 'A', 'K'}(אופציונלי)

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

החזרות:

פונקציה זו מחזירה מערך שטוח רציף עם אותו סוג נתונים כמו מערך קלט ובעל צורה שווה ל- ( x.size ).

דוגמה 1:

 import numpy as np x = np.array([[1, 3, 5], [11, 35, 56]]) y=np.ravel(x) y 

תְפוּקָה:

 array([ 1, 3, 5, 11, 35, 56]) 

בקוד למעלה

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

בפלט, הערכים של המערך מוצגים במערך שטוח רציף.

דוגמה 2:

 import numpy as np x = np.array([[1, 3, 5], [11, 35, 56]]) y = np.ravel(x, order='F') z = np.ravel(x, order='C') p = np.ravel(x, order='A') q = np.ravel(x, order='K') y z p q 

תְפוּקָה:

 array([ 1, 11, 3, 35, 5, 56]) array([ 1, 3, 5, 11, 35, 56]) array([ 1, 3, 5, 11, 35, 56]) array([ 1, 3, 5, 11, 35, 56]) 

דוגמה 3:

 import numpy as np x = np.arange(12).reshape(3,2,2).swapaxes(1,2) x y=np.ravel(a, order='C') y z=np.ravel(a, order='K') z q=np.ravel(a, order='A') q 

תְפוּקָה:

 array([[[ 0, 2], [ 1, 3]], [[ 4, 6], [ 5, 7]], [[ 8, 10], [ 9, 11]]]) array([ 0, 2, 1, 3, 4, 6, 5, 7, 8, 10, 9, 11]) array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]) array([ 0, 2, 1, 3, 4, 6, 5, 7, 8, 10, 9, 11]) 

בקוד למעלה

  • ייבאנו numpy עם שם הכינוי np.
  • יצרנו מערך 'איקס' באמצעות פונקציית np.arange() .
  • שינינו את צורתו והחלפנו את הציר באמצעות ה- שִׁנוּי צוּרָה() ו np.swapaxes() פוּנקצִיָה.
  • הכרזנו על המשתנים y, z ו-q והקצנו את הערך המוחזר של הפונקציה np.ravel().
  • עברנו את המערך 'איקס' ולסדר ג , ק , ו א בפונקציה.
  • לבסוף, ניסינו להדפיס את הערך של ו .

בפלט, הערכים של המערך מוצגים במערך שטוח רציף.