泰迪杯A题通讯产品销售和盈利能力分析一等奖作品(3)

简介: 泰迪杯A题通讯产品销售和盈利能力分析一等奖作品1. A 题 通讯产品销售和盈利能力分析 简介一、背景二、目标三、任务

通过对[“年度”, “季度”, “地区”, “国家”, “服务分类”]进行分组,求出”销售额"和”利润“总值

sale = year_quarter.groupby(["年度", "季度", "地区", "国家", "服务分类"])["销售额"].sum()
sale = pd.DataFrame(sale)
sale

输出为:

profit = year_quarter.groupby(["年度", "季度", "地区", "国家", "服务分类"])["利润"].sum()
profit = pd.DataFrame(profit)
profit

输出为:


# 拼接销售额与利润
sale["利润"] = profit["利润"].values
sale.to_csv("./第一题.csv")
sale

输出为:


# 查看保存的数据
n1 = pd.read_csv("./第一题.csv")
n1

输出为:


获取第一季度数据

forecast_data = n1[n1.loc[:, "季度"] == 1] # 拿出第一季度
forecast_data

输出为:


因为列”地区“,”国家“,”服务分类"中存在汉字,而逻辑回归只能够处理数值型数据,不能处理文字,在sklearn当中,除了专用来处理文字的算法,其他算法在fit的时候全部要求输入数组或矩阵,也不能够导入文字型数据(其实手写决策树和普斯贝叶斯可以处理文字,但是sklearn中规定必须导入数值型)。然而在现实中,许多标签和特征在数据收集完毕的时候,都不是以数字来表现的。比如说,学历的取值可以是[“小 学”,“初中”,“高中”,“大学”],付费方式可能包含[“支付宝”,“现金”,“微信”]等等。在这种情况下,为了让数据适应算法和库,我们必须将数据进行编码,即是说,将文字型数据转换为数值型。

这里我们采用preprocessing.LabelEncoder将汉字进行编码

# 对列地区,国家,服务分类 进行编码
from sklearn.preprocessing import LabelEncoder
y1 = forecast_data.loc[:, "地区"] # 要输入的是标签,不是特征矩阵,所以允许一维数据
y2 = forecast_data.loc[:, "国家"]
y3 = forecast_data.loc[:, "服务分类"]
le1 = LabelEncoder() # 实例化
le1 = le1.fit(y1) # 导入数据
label1 = le1.transform(y1) # transform接口调取结果
forecast_data.loc[:,"地区"] = label1
le2 = LabelEncoder() # 实例化
le2 = le2.fit(y2) # 导入数据
label2 = le2.transform(y2) # transform接口调取结果
forecast_data.loc[:,"国家"] = label2
le3 = LabelEncoder() # 实例化
le3 = le3.fit(y3) # 导入数据
label3 = le3.transform(y3) # transform接口调取结果
forecast_data.loc[:,"服务分类"] = label3
forecast_data

输出为:


备注:这里的警告问题可以参考博客https://blog.csdn.net/weixin_42575020/article/details/98846427

from sklearn.linear_model import LogisticRegression as LR # 逻辑回归
from sklearn.preprocessing import LabelEncoder
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score # 精确性分数
X1 = forecast_data.loc[:, ["年度", "地区", "国家", "服务分类", "利润"]]
X1
X2 = forecast_data.loc[:, ["年度", "地区", "国家", "服务分类", "销售额"]]
X2

输出为:

建模

正则化是用来防止模型过拟合的过程,常用的有L1正则化和L2正则化两种选项penalty:可以输入”l1“或者”l2“来指定使用哪一种正则化方式,不填写默认使用”l2“,注意:若选择”l1“正则化,参数solver仅能够使用的求解方式”liblinear“和”sage“

C:C正则化强度的倒数,必须是一个大于0的浮点数,不填写默认是1.0,即默认正则化与损失函数的比值是1:1,C越小,损失函数会越小,模型对损失函数的惩罚越重,正则化的效果越强,参数θ会逐渐被压缩得越来越小。

L1正则化和L2正则化虽然都可以控制过拟合,但它们的效果并不相同。当正则化强度逐渐增大(即C逐渐变小),参数θ 的取值会逐渐变小,但L1正则化会将参数压缩为0,L2正则化只会让参数尽量小,不会取到0。

y = forecast_data.loc[:, "销售额"]
y2 = forecast_data.loc[:, "利润"]
lrl1 = LR(penalty = "l1", solver = "liblinear", C = 0.5, max_iter = 1000)
lrl2 = LR(penalty = "l1", solver = "liblinear", C = 0.5, max_iter = 1000)
# 逻辑回归的重要属性coef_, 查看某个特征所对应的参数
lrl1 = lrl1.fit(X1, y.astype("int"))
lrl2 = lrl2.fit(X2, y2.astype("int"))

1.4.2预测2021年第一季度各个地区,国家,服务分类的销售额和利润

通过模型预测2021年第一季度各个地区,国家,服务分类的销售额和利润

X_test1 = X1
X_test1["年度"] = [2021 for i in range(X1.shape[0])]
X_test1

输出为:


X_test2 = X2
X_test2


输出为:


查看预测结果:

lrl_pro1 = lrl1.predict(X_test1)
lrl_pro1[0:5]


输出为:


lrl_pro2 = lrl2.predict(X_test2)
lrl_pro2[0:5]

输出为:


X_test =  X_test1.loc[:, ["年度", "地区", "国家", "服务分类"]]
X_test
相关文章
|
8月前
|
机器学习/深度学习 数据可视化 数据挖掘
第四届“泰迪杯”数据分析技能赛-赛题A:《通讯产品销售和盈利能力分析》报告
第四届“泰迪杯”数据分析技能赛-赛题A:《通讯产品销售和盈利能力分析》报告
538 0
|
12月前
|
弹性计算 Cloud Native 小程序
【年终特辑】看见科技创新力量 洞见时代创业精神—企业服务—蓝犀牛搬家:挑战非标化运营模式,云加速服务体验
【年终特辑】看见科技创新力量 洞见时代创业精神—企业服务—蓝犀牛搬家:挑战非标化运营模式,云加速服务体验
117 0
|
数据可视化 定位技术
泰迪杯A题通讯产品销售和盈利能力分析一等奖作品(4)
泰迪杯A题通讯产品销售和盈利能力分析一等奖作品 1. A 题 通讯产品销售和盈利能力分析 简介 一、背景 二、目标 三、任务
泰迪杯A题通讯产品销售和盈利能力分析一等奖作品(4)
泰迪杯A题通讯产品销售和盈利能力分析一等奖作品(2)
泰迪杯A题通讯产品销售和盈利能力分析一等奖作品 1. A 题 通讯产品销售和盈利能力分析 简介 一、背景 二、目标 三、任务
泰迪杯A题通讯产品销售和盈利能力分析一等奖作品(2)
|
数据可视化 数据挖掘 定位技术
泰迪杯A题通讯产品销售和盈利能力分析一等奖作品(1)
泰迪杯A题通讯产品销售和盈利能力分析一等奖作品 1. A 题 通讯产品销售和盈利能力分析 简介 一、背景 二、目标 三、任务
泰迪杯A题通讯产品销售和盈利能力分析一等奖作品(1)
|
存储 小程序 数据可视化
参赛作品05:身“林”其境—基于物联网的园林精细化生产系统
“智物智造杯-2022物联网创新应用大赛”投票开始啦!
382 0
阿里巴巴放大招:迟来的全球货源平台
阿里巴巴放大招:迟来的全球货源平台
128 0
|
存储 监控 数据可视化
【案例现场】“贴身战”背后,是精细化运营的实力较量
大数据时代企业除了在基础建设中更为重视数据以外,对执行力和速度的响应要求也越发严格。BI软件也不再仅仅是一个工具,更是一套契合数智化时代的决策管理方案,通过对数据的整合,融入业务逻辑,供给执行层行动指南,供给管理层决策参考,及时把控整体业务,发现业务问题,调整经营决策,从而不断改善整体业务,推动业务增长。
【案例现场】“贴身战”背后,是精细化运营的实力较量
|
供应链 自动驾驶
发改委等13部门发文:支持微商电商、网络直播等多样化自主就业
7月15日,国家发改委等十三部门发布《关于支持新业态新模式健康发展激活消费市场带动扩大就业的意见》
发改委等13部门发文:支持微商电商、网络直播等多样化自主就业
眼球网站经济学之我见——在网站上建立现代的经济体系,互联网营销
  请大家原谅我一下子发这么多文章,因为我真的是很难的有时间这么畅快的写一些东西出来了。对于挤出其他人的文章,我已经有很深的愧疚感了,真诚致歉。如果真有人觉得在这段时间内发文章不划算,可能导致自己文章被很快的刷掉,那么我建议你可以把你的文章存两天再发出来。
947 0