编程和尝试学习OOP和ML的新手。是的,同时接受这两个概念是一场艰巨的斗争,但却是令人愉快的。我遇到了此错误,不确定如何解决。
class DataInputOutput:
def __init__(self, inputData, outputData):
self.input = inputData
self.output = outputData
class DTModel:
def __init__(self, dataSetFile):
dataset = arff.load(open(dataSetFile, 'r'))
data = np.array(dataset['data'])
inputs = data[:, :-1] # All feature inputs except the last col
outputs = data[:, -1] # Last col of array which is the feature result
trainInputs = inputs[:6000] # First 6000 is training
self.trainOutputs = outputs[:6000]
self.trainingDataSet = dataset(inputData=trainInputs, outputData=self.trainOutputs)
输出:self.trainingDataSet = self.dataset(inputData=trainInputs, outputData=self.trainOutputs)
TypeError: 'dict' object is not callable
我正在阅读此thread,并且内容相似。我尝试进行如下更改:
dataset(inputData=[trainInputs], outputData=[self.trainOutputs] # adding brackets, "dict not callable" still occurs
我尝试进行的其他更改导致Pycharm错误“未解决的引用”。喜欢做:
= [dataset[inputData(trainInputs)] .... # inputData unresolved reference
我尝试进行的其他任何更改,Pycharm都会突出显示整行。也许我编辑的行错误,应该在dataset
或data
之类的地方进行更改吗?
完全追溯:
Traceback (most recent call last):
File "./train1.py", line 81, in <module>
loaddata = DTModel("mydataset.arff")
File "./train1.py", line 31, in __init__
self.trainingDataSet = dataset(inputData=trainInputs,
outputData=self.trainOutputs)
TypeError: 'dict' object is not callable
答案 0 :(得分:0)
您抱怨将dict
分配给数据集然后尝试
self.trainingDataSet = dataset( ... )
产生一个诊断,指示不能调用dict。 Carcigenicate足以说明您可能要调用此构造函数:
self.trainingDataSet = DataInputOutput( ... )