PowerBI多元回归预测数据(Python)

  前两天用PowerBI做了一个多元线性回归基于R语言的内容,点击《PowerBI多元回归预测数据(R语言)》可以查看,但是好像现在Python在人群中使用的更多,后面类似的涉及统计模型和机器学习的内容应该也会以Python为主,下面开始介绍一下Python和PowerBI一起实现多元线性回归并在PowerBI中进行筛选预测的方法,效果如下↓

  从图中看应该还是清楚,过了两天我们又新增了p值检验参数,并且还新增了一个维度,就是推广投放费用的时候有三种投放规则(随机投放、手动精确投方和系统投放),这三个是定性变量,还需要独热编码转换成数值。新增了这个参数后,我们模型的匹配率更高了,之前R2是0.78左右,有了这个维度,R2直接上升到了0.88,几乎接近完美了。下面简单介绍一下实现方法。

  数据还是之前的数据,只是又新增了一个费用投放方式的维度,如下↓

  然后流程是PowerBI导入数据,这个数据很完整了,不需要清洗,不需要聚合,直接拿来使用就可以了,下面就是重点,如何调用Python来完成我们重点的参数计算。在Python里面有两种主流计算多元回归的方法,通过statsmodels里面OLS方法,或者调用SKlearn里面的线性回归方法都可以。我们这里使用的是第一种,因为第二种调用SKlearn的方法后面其他的机器学习模型应该会经常用到。

  需要指出的是,我们有一个推广方式的字段是分类值,需要使用pd里面的get_dummies进行独热编码处理后才能使用。处理然后把数据合并在一起,加上一个1的常数列,就可以用一句很简单的语句建模拟合数据了,然后把拟合的参数转换成DataFrame格式,PowerBI就可以识别了,Python语句和结果如下↓

import pandas as pd
import statsmodels.api as sm
#数据预处理,分类数据编码(独热编码)
pro_t = pd.get_dummies(dataset['promotion_type'],prefix="pro_t")
df1 = pd.concat((dataset.iloc[:,2:6],pro_t), axis=1)
X = sm.add_constant(df1)
Y = dataset.iloc[:,1]
#建模。参数估计(回归系数、总体方差)
model = sm.OLS(Y,
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
多元线性回归是一种用于预测的统计模型,它可以通过使用Python编程语言来实现。 在Python,可以使用一些库和工具来构建多元线性回归模型,例如NumPy、Pandas和Scikit-learn等。 首先,我们需要导入这些库: ```python import numpy as np import pandas as pd from sklearn.linear_model import LinearRegression from sklearn.model_selection import train_test_split ``` 然后,我们可以从外部数据源(如CSV文件)或内部数据源(如NumPy数组)加载数据集。假设我们有一个包含多个自变量和一个因变量的数据集。然后,我们可以将数据集分为训练集和测试集: ```python # 加载数据集 data = pd.read_csv('data.csv') # 分离自变量和因变量 X = data[['x1', 'x2', 'x3']] y = data['y'] # 分割数据集为训练集和测试集 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0) ``` 接下来,我们可以创建和训练多元线性回归模型: ```python # 创建多元线性回归模型 model = LinearRegression() # 训练模型 model.fit(X_train, y_train) ``` 模型训练完成后,我们可以使用测试集来评估模型的性能: ```python # 预测测试集结果 y_pred = model.predict(X_test) # 计算模型性能指标 mse = np.mean((y_pred - y_test) ** 2) rmse = np.sqrt(mse) ``` 最后,我们可以使用模型来进行预测: ```python # 创建新的输入特征 new_data = np.array([[1, 2, 3]]) # 预测数据的结果 prediction = model.predict(new_data) ``` 通过这些步骤,我们可以使用Python编程语言构建多元线性回归预测模型,并使用训练好的模型对新数据进行预测

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值