我目前正在读这本书,机器学习在行动,但我无法理解本书第2章(kNN)中的一些代码。
def file2matrix(file):
fr=open(file)
numofLines=len(fr.readlines())
returnMat=zeros((numofLines,3))
classLabelVector=[]
fr=open(file)
第一个问题是,我为什么要打开文件两次。当我删除第二个 fr = open(文件)时,没有数据作为回报。我为什么要打开(文件)两次?
第二个问题是关于零。当我在iPython中逐行尝试时,iPython说没有定义名称“零”。当然,导入numpy和numpy.zeros会起作用,但在这段代码中,没有'numpy',但它有效。为什么会这样?我不明白这。请给我一个答案!