从另一个.py文件导入函数时未定义的numpy软件包



在我的主文件中我有:

import matplotlib.pyplot as plt
import seaborn
import numpy as np
import time
import sys
sys.path.append("C:/.../python check/createsplit")
import createsplit
data='MJexample'
X,Y,N,Ntr=create_training_data(data)

我在哪里打电话 create_training_data 函数来自 createSplit.py file file,它是:

import numpy as np
import scipy.io
def create_training_data(data_type):
     """
     creates training data
     """
     if data_type=='MJexample':
         N=300
         Ntr = 150
         X=np.linspace(0,1,N)
         X = np.array([X,X*X,np.linspace(5,10,N),np.sin(X),np.cos(X),np.sin(X)*np.cos(X)]).T
         fac=40
         Y=np.array([np.sin(fac*x)*np.cos(fac*x**2) for x in X[:,0]])[:,None]
         _X=X
         _Y=Y
         return _X,_Y,N,Ntr

但是,运行我的原始文件会导致错误: nameRorr:由于某些原因,我不理解的某些原因未定义全局名称'np'。我认为我正在以错误的方式导入功能,但我并不真正了解什么是错误的。

我认为此问题仅仅是因为该功能的错误呼吁。尝试

X, Y, N, Ntr = createsplit.create_training_data(data)

而不是工作。

最新更新