这段代码主要是划分数据,比如说看这个矩阵的第一列是否满足需要,如果满足需要,就把后面的添加进来,然后追加到新的矩阵中。。可是这么做有什么用途呢??另外,axis是轴的意思,这段代码给出了三个参数,第一个是要被划分的数据集,第二个是轴线,比如说是第一列,还是第二列,第三个是value,看这一列的数值是否==value
def splitDataSet(dataSet, axis, value):
retDataSet = []
for featVec in dataSet:
print(featVec)
if featVec[axis] == value:
reducedFeatVec = featVec[:axis]
reducedFeatVec.extend(featVec[axis+1:])
retDataSet.append(reducedFeatVec)
return retDataSet
featVec[:axis] 是从列表index0到axis,如果axis=0,那么返回的是一个空的列表
featVec[axis+1:]是从列表index axis+1到最后
extend 是指将包含的内容加进去
append是将所有的内容加进去,比如一整个列表[1,2,3,5 ]