参数必须是字符串或数字,而不是“LpAffineExpression”

2024-09-30 00:26:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图使用PythonIRR函数来最大化纸浆,但我得到了以下错误

TypeError:float()参数必须是字符串或数字,而不是“LpAffineExpression” TypeError回溯(最近一次调用上次) 在里面 11姓名[6]*费率[6]*费率表2[2]+姓名[7]*费率[7]*费率表2[2]+姓名[8]*费率表2[8]*费率表2[2]+姓名[9]*费率表2[2]+姓名[10]*费率表[10]*费率表2[2]+姓名[11]*费率表2[2]+ 12姓名[12]*税率[12]*税率表2[2]+姓名[13]*税率[13]*税率表2[2]+姓名[14]*税率表2[2]+姓名[15]*税率表2[2]+姓名[16]*税率表[16]*税率表2[2]+姓名[17]*税率表2[2]+

——>;13名称[18]*费率[18]*费率列表2[2])) 14 十五

problem += np.irr([(-19660528.00),
        (name[0]*rate[0] + name[1]*rate[1] + name[2]*rate[2] + name[3]*rate[3] + name[4]*rate[4] + name[5]*rate[5] + 
        name[6]*rate[6] + name[7]*rate[7] + name[8]*rate[8] + name[9]*rate[9] + name[10]*rate[10] + name[11]*rate[11] +
        name[12]*rate[12] + name[13]*rate[13] + name[14]*rate[14] + name[15]*rate[15] + name[16]*rate[16] + name[17]*rate[17] + 
        name[18]*rate[18]),
       (name[0]*rate[0]*ratesList1[1] + name[1]*rate[1]*ratesList2[1] + name[2]*rate[2]*ratesList2[1] + name[3]*rate[3]*ratesList2[1] + name[4]*rate[4]*ratesList2[1] + name[5]*rate[5]*ratesList2[1] + 
        name[6]*rate[6]*ratesList2[1] + name[7]*rate[7]*ratesList2[1] + name[8]*rate[8]*ratesList2[1] + name[9]*rate[9]*ratesList2[1] + name[10]*rate[10]*ratesList2[1] + name[11]*rate[11]*ratesList2[1] +
        name[12]*rate[12]*ratesList2[1] + name[13]*rate[13]*ratesList2[1] + name[14]*rate[14]*ratesList2[1] + name[15]*rate[15]*ratesList2[1] + name[16]*rate[16]*ratesList2[1] + name[17]*rate[17]*ratesList2[1] + 
        name[18]*rate[18]*ratesList2[1]),
       (name[0]*rate[0]*ratesList1[2] + name[1]*rate[1]*ratesList2[2] + name[2]*rate[2]*ratesList2[2] + name[3]*rate[3]*ratesList2[2] + name[4]*rate[4]*ratesList2[2] + name[5]*rate[5]*ratesList2[2] + 
        name[6]*rate[6]*ratesList2[2] + name[7]*rate[7]*ratesList2[2] + name[8]*rate[8]*ratesList2[2] + name[9]*rate[9]*ratesList2[2] + name[10]*rate[10]*ratesList2[2] + name[11]*rate[11]*ratesList2[2] +
        name[12]*rate[12]*ratesList2[2] + name[13]*rate[13]*ratesList2[2] + name[14]*rate[14]*ratesList2[2] + name[15]*rate[15]*ratesList2[2] + name[16]*rate[16]*ratesList2[2] + name[17]*rate[17]*ratesList2[2] + 
        name[18]*rate[18]*ratesList2[2])])

问题+=(姓名[0]+姓名[1]+姓名[2]+姓名[3]+姓名[4]+姓名[5]+姓名[6]+姓名[7]+姓名[8]+姓名[9]+姓名[10]+ 姓名[11]+姓名[12]+姓名[13]+姓名[14]+姓名[15]+姓名[16]+姓名[17]+姓名[18])<;=总和(marketMix['GLA']),“第一约束”


Tags: 函数字符串name参数rate错误float纸浆
1条回答
网友
1楼 · 发布于 2024-09-30 00:26:23

numpy函数irr()将值列表作为参数。而是传递一个线性表达式列表,其中包含要进行优化的变量irr()不准备处理这个问题。它假设所有参数都可以强制为float。您必须显式地声明相应的表达式,而不是使用函数irr()

相关问题 更多 >

    热门问题