logo

numpy.log() a Pythonban

A numpy.log() egy matematikai függvény, amely az x(x minden bemeneti tömbelemhez tartozik) természetes logaritmusának kiszámítására szolgál. Ez az exponenciális függvény inverze, valamint egy elemenkénti természetes logaritmus. A természetes logaritmus log a fordítottja az exponenciális függvénynek, így log(exp(x))=x. Az e bázisban lévő logaritmus a természetes logaritmus.

Szintaxis

 numpy.log(x, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature, extobj]) = 

Paraméterek

x: array_like

Ez a paraméter határozza meg a numpy.log() függvény bemeneti értékét.

out: ndarray, None vagy sora ndarray és None (nem kötelező)

Ez a paraméter az eredmény tárolási helyének meghatározására szolgál. Ha megadjuk ezt a paramétert, akkor a bemeneti sugárzáshoz hasonló alakúnak kell lennie; ellenkező esetben egy frissen kiosztott tömb kerül visszaadásra. Egy sor hossza megegyezik a kimenetek számával.

ahol: array_like (opcionális)

Ez egy olyan feltétel, amelyet a bemeneten keresztül sugároznak. Ezen a helyen, ahol a feltétel True, az out tömb az ufunc(univerzális függvény) eredményre lesz beállítva; ellenkező esetben megőrzi eredeti értékét.

casting: {'no','equiv','safe','same_kind','unsafe'} (opcionális)

Ez a paraméter szabályozza az esetlegesen előforduló adattovábbítás típusát. A „nem” azt jelenti, hogy az adattípusokat egyáltalán nem szabad átadni. Az „ekvivalens” azt jelenti, hogy csak a bájtsorrend változtatása engedélyezett. A „széf” az egyetlen olyan öntvény, amely lehetővé teszi a megőrzött értéket. A „same_fajta” csak biztonságos dobásokat vagy fajtán belüli dobásokat jelent. A „nem biztonságos” azt jelenti, hogy bármilyen adatkonverzióra sor kerülhet.

sorrend: {'K', 'C', 'F', 'A'} (opcionális)

Ez a paraméter határozza meg a kimeneti tömb számítási iterációs sorrendjét/memória elrendezését. Alapértelmezés szerint a sorrend K lesz. A „C” sorrend azt jelenti, hogy a kimenetnek C-vel szomszédosnak kell lennie. Az 'F' sorrend F-vel szomszédos, az 'A' pedig F-egymással, ha a bemenetek F-vel szomszédosak, és ha a bemenetek C-szomszédosak, akkor az 'A' azt jelenti, hogy C szomszédos. A „K” azt jelenti, hogy a bemenetek elemsorrendjéhez igazodunk (a lehető legpontosabban).

dtype: adattípus (nem kötelező)

Felülbírálja a számítási és kimeneti tömbök dtype értékét.

teszt: bool (opcionális)

Alapértelmezés szerint ez a paraméter igaz értékre van állítva. Ha false értékre állítjuk, a kimenet mindig szigorú tömb lesz, nem pedig altípus.

aláírás

Ez az argumentum lehetővé teszi, hogy konkrét aláírást adjunk az 1-d ciklushoz, amelyet az alapul szolgáló számításban használunk.

extobj

Ez a paraméter egy 1, 2 vagy 3 hosszúságú lista, amely megadja az ufunc puffer méretét, a hibamód egészét és a hiba visszahívási függvényét.

Visszatér

Ez a függvény egy ndarray-t ad vissza, amely tartalmazza az x természetes logaritmikus értékét, amely a bemeneti tömb összes eleméhez tartozik.

1. példa:

 import numpy as np a=np.array([2, 4, 6, 3**8]) a b=np.log(a) b c=np.log2(a) c d=np.log10(a) d 

Kimenet:

 array([ 2, 4, 6, 6561]) array([0.69314718, 1.38629436, 1.79175947, 8.78889831]) array([ 1. , 2. , 2.5849625 , 12.67970001]) array([0.30103 , 0.60205999, 0.77815125, 3.81697004]) 

A fent említett kódban

  • Importáltuk a numpy-t np aliasnévvel.
  • Létrehoztunk egy 'a' tömböt az np.array() függvény segítségével.
  • Deklaráltuk a b, c és d változót, és hozzárendeltük az np.log(), np.log2() és np.log10() függvények visszaadott értékét.
  • Minden függvényben átadtuk az 'a' tömböt.
  • Végül megpróbáltuk kinyomtatni b, c és d értékét.

A kimenetben egy ndarray látható, amely a forrástömb összes elemének log, log2 és log10 értékét tartalmazza.

java string builder

2. példa:

 import numpy as np import matplotlib.pyplot as plt arr = [2, 2.2, 2.4, 2.6,2.8, 3] result1=np.log(arr) result2=np.log2(arr) result3=np.log10(arr) plt.plot(arr,arr, color='blue', marker='*') plt.plot(result1,arr, color='green', marker='o') plt.plot(result2,arr, color='red', marker='*') plt.plot(result3,arr, color='black', marker='*') plt.show() 

Kimenet:

numpy.log()

A fenti kódban

  • Importáltuk a numpy-t np aliasnévvel.
  • A matplotlib.pyplot fájlt is importáltuk plt álnévvel.
  • Ezután létrehoztunk egy 'arr' tömböt az np.array() függvény segítségével.
  • Ezt követően deklaráltuk az result1, result2, result3 változókat, és hozzárendeltük az np.log(), np.log2() és np.log10() függvények visszaadott értékeit.
  • Minden függvényben átadtuk az „arr” tömböt.
  • Végül megpróbáltuk ábrázolni az 'arr', result1, result2 és result3 értékeket.

A kimenetben négy különböző színű egyenest tartalmazó grafikon látható.

3. példa:

 import numpy as np x=np.log([2, np.e, np.e**3, 0]) x 

Kimenet:

 __main__:1: RuntimeWarning: divide by zero encountered in log array([0.69314718, 1. , 3. , -inf]) 

A fenti kódban

  • Először is importáltuk a numpy-t np aliasnévvel.
  • Deklaráltuk az 'x' változót, és hozzárendeltük az np.log() függvények visszaadott értékét.
  • Különböző értékeket adtunk át a függvényben, például integer value, np.e és np.e**2.
  • Végül megpróbáltuk kinyomtatni az 'x' értékét.

A kimenetben egy ndarray látható, amely a forrástömb elemeinek log értékeit tartalmazza.