python - 我以为我那里缺少 5 个必需的职位要求?请问有什么想法吗?
问题描述
import streamlit as st
import pickle
st.title('My first app')
model = open('model2.pkl','rb')
car_nb = pickle.load(model)
def predict_price(name,year,nr_of_accidents,color_exterior,color_interior,car_mileage):
prediction=car_nb.predict([['name','year','nr_of_accidents','color_exterior','color_interior','car_mileage']])
print(prediction)
return prediction
def main():
st.title("Used Car Prices!!")
st.write('''
#
''')
name = st.text_input("Car","Type Here")
year = st.text_input("Year","Type Here")
nr_of_accidents = st.text_input("Accidents","Type Here")
color_exterior = st.text_input("Exterior Color","Type Here")
color_interior = st.text_input('Interior Color', 'Type Here')
car_mileage = st.text_input('Miles', 'Type Here')
result=""
if st.button("Predict"):
result=predict_price(([['name','year','nr_of_accidents','color_exterior','color_interior','car_mileage']]))
st.success('The price is {}'.format(result))
if __name__ =='__main__':
main()
TypeError:predict_price() 缺少 5 个必需的位置参数:“year”、“nr_of_accidents”、“color_exterior”、“color_interior”和“car_mileage”
解决方案
您显然predict_price()
从调用np.predict()
. 正如错误消息所说,这不会像predict_price()
预期的 6 个参数那样工作,并且您只传递了一个(嵌套列表)。您(很可能)应该更换:
result=predict_price(([['name','year','nr_of_accidents','color_exterior','color_interior','car_mileage']]))
和
result = predict_price(name,year,nr_of_accidents,color_exterior,color_interior,car_mileage)
推荐阅读
- python-3.x - discord.py - Assistance with Count-Down Command
- excel - 如何在 .NET Excel 插件中向 VBA 公开自动生成的 Web 引用类
- android - MP Android 未显示 X 轴值
- java - eclipse java文件显示问号,导致找不到或加载主类
- c - 动态链接 C 驱动程序后未定义的符号
- odoo - Odoo 8 - 批量编辑和字段域
- python - 将 DataFrame 乘以不同形状的 DataFrame(或系列)
- node.js - 自适应卡片 - selectAction 不适用于 iOS 设备 Node.js 上的 MS Teams 应用程序
- c# - Twilio:可用号码 - 我可以获得多少个号码?
- html - ASP .NET linq 无法从视图访问会话