Oplossing: foutnaam 'np' is niet gedefinieerd
Een van de meest voorkomende fouten die je kunt tegenkomen bij het gebruik van Python is:
NameError : name 'np' is not defined
Deze fout treedt op wanneer u de Python-bibliotheek NumPy importeert, maar er niet in slaagt deze een alias naar np te geven tijdens het importeren.
De volgende voorbeelden illustreren hoe dit probleem optreedt en hoe u het kunt oplossen.
Voorbeeld 1: numpy importeren
Stel dat u de NumPy-bibliotheek importeert met behulp van de volgende code:
import numpy
Als u vervolgens een numpy-array met waarden probeert te definiëren, krijgt u de volgende foutmelding:
#define numpy array
x = np. random . normal (loc=0, scale=1, size=20)
#attempt to print values in array
print (x)
Traceback (most recent call last):
----> 1 x = np.random.normal(loc=0, scale=1, size=20)
2 print(s)
NameError : name 'np' is not defined
Om deze fout te verhelpen, moet u de alias np opgeven bij het importeren van NumPy:
import numpy as np #define numpy array x = np. random . normal (loc=0, scale=1, size=20) #print values in array print (x) [-0.93937656 -0.49448118 -0.16772964 0.44939978 -0.80577905 0.48042484 0.30175551 -0.15672656 -0.26931062 0.38226115 1.4472055 -0.13668984 -0.74752684 1.6729974 2.25824518 0.77424489 0.67853607 1.46739364 0.14647622 0.87787596]
Voorbeeld 2: van numpy import *
Stel dat u alle functies uit de NumPy-bibliotheek importeert met behulp van de volgende code:
from numpy import *
Als u vervolgens een numpy-array met waarden probeert te definiëren, krijgt u de volgende foutmelding:
#define numpy array
x = np. random . normal (loc=0, scale=1, size=20)
#attempt to print values in array
print (x)
Traceback (most recent call last):
----> 1 x = np.random.normal(loc=0, scale=1, size=20)
2 print(s)
NameError : name 'np' is not defined
Om deze fout te verhelpen, moet u de alias np opgeven bij het importeren van NumPy:
import numpy as np #define numpy array x = np. random . normal (loc=0, scale=1, size=20) #print values in array print (x) [-0.93937656 -0.49448118 -0.16772964 0.44939978 -0.80577905 0.48042484 0.30175551 -0.15672656 -0.26931062 0.38226115 1.4472055 -0.13668984 -0.74752684 1.6729974 2.25824518 0.77424489 0.67853607 1.46739364 0.14647622 0.87787596]
Als alternatief kunt u ervoor kiezen om de np- syntaxis helemaal niet te gebruiken:
import numpy #define numpy array x = numpy. random . normal (loc=0, scale=1, size=20) #print values in array print (x) [-0.93937656 -0.49448118 -0.16772964 0.44939978 -0.80577905 0.48042484 0.30175551 -0.15672656 -0.26931062 0.38226115 1.4472055 -0.13668984 -0.74752684 1.6729974 2.25824518 0.77424489 0.67853607 1.46739364 0.14647622 0.87787596]
Opmerking: de syntaxis „numpy importeren als np“ wordt vaak gebruikt omdat deze een beknoptere manier biedt om NumPy-functies te gebruiken. In plaats van elke keer „numpy“ te typen, kunt u eenvoudigweg „np“ typen, wat sneller en gemakkelijker te lezen is.
Aanvullende bronnen
Oplossing: NameError ‚pd‘ is niet gedefinieerd
Oplossing: Geen module met de naam pandas