Python 基于pandas和stats模型的电子商务商品销售预测
我想用pandas和statsmodel预测电子商务业务中每种产品的销售数量。因为商品销售是一个计数因变量,所以我假设泊松模型最有效 在理想情况下,该模型将用于决定在广告中使用哪些产品,以增加产品视图,并决定决定改变价格的价格点,以获得最佳性能/盈利能力 到目前为止还不错,但是当我尝试:Python 基于pandas和stats模型的电子商务商品销售预测,python,pandas,statsmodels,Python,Pandas,Statsmodels,我想用pandas和statsmodel预测电子商务业务中每种产品的销售数量。因为商品销售是一个计数因变量,所以我假设泊松模型最有效 在理想情况下,该模型将用于决定在广告中使用哪些产品,以增加产品视图,并决定决定改变价格的价格点,以获得最佳性能/盈利能力 到目前为止还不错,但是当我尝试: ... import statsmodels.formula.api as smf ... result = smf.poisson(formula="Item_Sales ~ Product_Detail_V
...
import statsmodels.formula.api as smf
...
result = smf.poisson(formula="Item_Sales ~ Product_Detail_Views + Variant_Price + C(Product_Type)", data=df).fit()
我得到:
RuntimeWarning: invalid value encountered in multiply
return -np.dot(L*X.T, X)
RuntimeWarning: invalid value encountered in greater_equal
return mu >= 0
RuntimeWarning: invalid value encountered in greater
oldparams) > tol))
还有一张满是南的桌子
如果我对同一数据集使用OLS:
result = smf.ols(formula="Item_Sales ~ Product_Detail_Views + Variant_Price + C(Product_Type)", data=df).fit()
我得到的R平方是0.809,所以数据是好的。虽然我得到了负面的预测,但这个模型并没有那么有用,这显然是不可能的,你不可能有负面的商品销售
如何使泊松模型工作?看起来像是数据问题。由于未显示样本数据,因此无法确定。您可以尝试使用带有族泊松的GLM或带有族泊松的GEE 例如:
smf.glm('sedimentation ~ C(control_grid)', data=df, families=sm.families.Poisson)
如果你今天从商店买了一台电视机,明天还回来,那么明天的-1预测听起来相当不错;因为明天假设时间是分析中的一个因素,而事实并非如此。若你们从等式中抽出时间,你们能得到的最坏结果是0净销售额,不包括超出范围的盗窃。