gpt4 book ai didi

python - Sklearn 决策树分类器显示 float 错误 Python [不是重复的]

转载 作者:太空宇宙 更新时间:2023-11-04 09:47:42 25 4
gpt4 key购买 nike

我想使用 sklearn DecisionTreeClassifier 制作一个预测程序。

我正在比较两个列表,ListOnePar 具有浮点值,而 timelist 仅具有字符串。我总是得到同样的错误。我在网上搜索,但没有找到任何可以帮助我的东西。我只看到可以在两个列表之间进行比较(一个带有 float ,另一个带有字符串。)这不是另一个问题的重复,在另一个问题中错误是完全不同的,并且整个程序是不同的。

这是错误:

Pred1=tree.DecisionTreeClassifier()
AttributeError: 'float' object has no attribute 'DecisionTreeClassifier'

这是代码:

from sklearn import tree

ListOnePar=[]

for child in tree1.get_children(id1):
ListTwoPar=[]

one=round(float(tree1.item(child,"values")[1]),2)
two=round(float(tree1.item(child,"values")[2]),2)
tree=round(float(tree1.item(child,"values")[3]),2)
four=round(float(tree1.item(child,"values")[5]),1)
five=round(float(tree1.item(child,"values")[6]),1)

ListTwoPar.append(one)
ListTwoPar.append(two)
ListTwoPar.append(tree)
ListTwoPar.append(four)
ListTwoPar.append(five)

ListOnePar.append(ListTwoPar)

timelist=[]

for child in tree1.get_children(id1):
time=tree1.item(child,"values")[7]
timelist.append(time)

Pred1=tree.DecisionTreeClassifier()
Pred1=Pred1.fit(ListOnePar,time)

size=float(PredSizeEntry.get())
time=float(PredTimeEntry.get())
cost=float(PredCostEntry.get())
level=float(PredLevelEntry.get())
subcontractors=float(PredSubcontractorsEntry.get())

ListForPrediction1=[]
ListForPrediction2=[]

ListForPrediction2.insert(0,size)
ListForPrediction2.insert(1,time)
ListForPrediction2.insert(2,cost)
ListForPrediction2.insert(3,level)
ListForPrediction2.insert(4,subcontractors)

ListForPrediction1.append(ListForPrediction2)

prediction1=Pred1.predict(ListForPrediction1)
print(prediction1[0])

最佳答案

  • 我认为你的程序tree中有一个变量>
  • 程序混淆了使用 import 语句 treetree 变量,因为您将 tree 覆盖为 float
  • 将变量名改为three

    for child in tree1.get_children(id1):
    ListTwoPar=[]

    one=round(float(tree1.item(child,"values")[1]),2)
    two=round(float(tree1.item(child,"values")[2]),2)
    tree=round(float(tree1.item(child,"values")[3]),2) # <===== variable to be changed from tree to three
    four=round(float(tree1.item(child,"values")[5]),1)
    five=round(float(tree1.item(child,"values")[6]),1)
  • 您在计算 tree=round(float(tree1.item(child,"values")[3]),2)时将 tree 设为 float code> 因此您收到错误:AttributeError: 'float' object has no attribute 'DecisionTreeClassifier'

关于python - Sklearn 决策树分类器显示 float 错误 Python [不是重复的],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49127314/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com