当前位置: 首页 > news >正文

viewjs wordpress广州优化防控措施

viewjs wordpress,广州优化防控措施,如何在建设厅网站投诉,微信如何建立自己的公众号【实验名称】 实验一:绘制板块层级图 【实验目的】 1. 掌握数据文件读取 2. 掌握数据处理的方法 3. 实现板块层级图的绘制 【数据介绍】Instacart Market Basket Analysis 1. 数据说明 数据共有300 0000orders, 20 0000users, …

【实验名称】

实验一:绘制板块层级图

【实验目的】

1. 掌握数据文件读取

2. 掌握数据处理的方法

3. 实现板块层级图的绘制

 【数据介绍】Instacart Market Basket Analysis

1. 数据说明
      数据共有300 0000orders,
      20 0000users,
      5000products, 
      每个user提供有4-100个orders
2. 各数据内容了解
   aisles:产品摆放位置说明
   order_products__prior:订单产品关联表
   orders.csv: 用户下单记录表。    
   products.csv: 产品ID分类,及其摆放位置的关系表
   departments.csv:  产品分类表
3. 目标分析
   目标是预测用户下次购买时,可能再次购买的产品。
   即,用户历史购买的产品,那些是用户下次购买还会购买的。
4. 训练数据构建
   order_id, product_id(订单中的一个产品), lable(是否下次购买)。
  (1)产品特征
      1)产品被购买次数。
      2)产品被重复购买次数
      3)产品被重复购买次数/总的购买次数。
      4)产品在不同week被购买次数
      5)产品在不同hour被购买次数。
  (2)用户特征
      1)用户总下单次数。
      2)用户总购买量。
      3)用户每单平均购买量。
      4)用户距离上一次购物时间。
      5)用户频繁购买是周几。
      6)用户购买当天小时。
      7)用户购买商品数(去重)
      8)用户购买最多的商品
      7)用户购买最少的商品。
      9)用户在不同week购买最多,以及最少的商品。
      10)用户在不同hour购买最多,以及最少的商品。
  (3)user_products特征
      1)该用户购买该商品次数/该用户下单次数。
      2)该用户上一次购买该商品距离现在天数。
      3)该用户上一次购买该商品平均week日期。
      4)该用户上一次购买该商品平均时间。
      5)该用户购买该商品的频率

 Instacart 的数据科学团队在提供这种令人愉悦的购物体验方面发挥着重要作用。目前,他们使用交易数据来开发模型,以预测用户在会话期间会再次购买、首次尝试或下次添加到购物车的产品。

无论您是从精心策划的购物清单中购物,还是让奇思妙想引导您放牧,我们独特的美食仪式都定义了我们是谁。Instacart 是一款杂货订购和送货应用程序,旨在让您在需要时轻松地将您个人最喜欢的和主食装满您的冰箱和食品储藏室。通过 Instacart 应用程序选择产品后,个人购物者会查看您的订单并为您进行店内购物和送货。

Instacart 的数据科学团队在提供这种令人愉悦的购物体验方面发挥着重要作用。目前,他们使用交易数据来开发模型,以预测用户在会话期间会再次购买、首次尝试或下次添加到购物车的产品。最近,Instacart 开源了这些数据 - 请参阅他们的博客文章 300 万个 Instacart 订单。

 【实验原理】

板块层级图(treemap)是一种基于面积的可视化方式,通过每一个板块(通常为矩形)的尺寸大小进行度量。外部矩形代表父类别,而内部矩形代表子类别。我们也可以通过板块层级图简单的呈现比例关系,不过它更擅于呈现树状结构的数据。

读取绘图所用的数据,并对数据进行处理将数据处理成我们可以使用的形式,绘制板块层级图,设置标签和标题。

【实验环境】

Windows 11,python3.11.1,pycharm professional 2024.2.1,jupyter notebook

【实验步骤】

题目一:安装pandas、matplotlib、seaborn、squarify

1、输入命令:pip install pandas

2、输入命令:pip install matplotlib

3、输入命令:pip install seaborn

  1. 输入命令:pip install squarify

题目二:读取数据

在这里我们使用pandas库中的read_csv函数来读取这3个数据文件。

import pandas as pdproducts_df = pd.read_csv('products.csv')
aisles_df = pd.read_csv('aisles.csv')
departments_df = pd.read_csv('departments.csv')
aisles_df.head(10)

数据读取的结果(aisles_df部分数据读取结果):

题目三:数据预处理

我们需要根据源表对目标表进行匹配查询,使用merge函数进行操作。

order_products_prior_df = pd.merge(products_df, aisles_df, on='aisle_id', how='left')
order_products_prior_df = pd.merge(order_products_prior_df, departments_df, on='department_id', how='left')
order_products_prior_df.head()
temp = order_products_prior_df[['product_name', 'aisle', 'department']]
temp = pd.concat([order_products_prior_df.groupby('department')['product_name'].nunique().rename('products_department'),order_products_prior_df.groupby('department')['aisle'].nunique().rename('aisle_department')
], axis=1).reset_index()
temp = temp.set_index('department')
temp2 = temp.sort_values(by="aisle_department", ascending=False)

进行匹配操作后的数据。

print(temp)

print(temp2)

 

题目四:绘制板块层级图

1.绘制初始的板块层级图

cmap = matplotlib.cm.viridis
mini, maxi = temp2.products_department.min(), temp2.products_department.max()
norm = matplotlib.colors.Normalize(vmin=mini, vmax=maxi)
colors = [cmap(norm(value)) for value in temp2.products_department]
colors[1] = "#FBFCFE"
labels = ["%s\n%d aisle num\n%d products num" % (label) for label inzip(temp2.index, temp2.aisle_department, temp2.products_department)]
fig = plt.figure(figsize=(12, 10))
ax = fig.add_subplot(111, aspect="equal")
ax = squarify.plot(temp2.aisle_department, color=colors, label=labels, ax=ax, alpha=.7)

绘制结果

2.设置xy轴的属性

ax.set_xticks([])
ax.set_yticks([])

3.添加图表标题

fig.suptitle("How are aisles organized within departments", fontsize=20 )

4.添加数据标签

img = plt.imshow([temp2.products_department], cmap=cmap)
img.set_visible(False)
fig.colorbar(img, orientation="vertical", shrink=.96)
fig.text(.76, .9, "numbers of products", fontsize=14)

这样我们的板块层级图就绘制完毕了

附录:总代码

import pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)
import matplotlib.pyplot as plt
import seaborn as sns
import matplotlib
import squarify
color = sns.color_palette()
pd.options.mode.chained_assignment = None # default='warn'
products_df = pd.read_csv('products.csv')
aisles_df = pd.read_csv('aisles.csv')
departments_df = pd.read_csv('departments.csv')
order_products_prior_df = pd.merge(products_df, aisles_df, on='aisle_id', how='left')
order_products_prior_df = pd.merge(order_products_prior_df, departments_df, on='department_id', how='left')
order_products_prior_df.head()
temp = order_products_prior_df[['product_name', 'aisle', 'department']]
temp = pd.concat([order_products_prior_df.groupby('department')['product_name'].nunique().rename('products_department'),order_products_prior_df.groupby('department')['aisle'].nunique().rename('aisle_department')
], axis=1).reset_index()
temp = temp.set_index('department')
temp2 = temp.sort_values(by="aisle_department", ascending=False)
print(temp)
print(temp2)
x = 0
y = 0
width = 100
height = 100
cmap = matplotlib.cm.viridis
mini, maxi = temp2.products_department.min(), temp2.products_department.max()
norm = matplotlib.colors.Normalize(vmin=mini, vmax=maxi)
colors = [cmap(norm(value)) for value in temp2.products_department]
colors[1] = "#FBFCFE"
labels = ["%s\n%d aisle num\n%d products num" % (label) for label inzip(temp2.index, temp2.aisle_department, temp2.products_department)]
fig = plt.figure(figsize=(12, 10))
ax = fig.add_subplot(111, aspect="equal")
ax = squarify.plot(temp2.aisle_department, color=colors, label=labels, ax=ax, alpha=.7)
fig.suptitle("How are aisles organized within departments", fontsize=20 )
ax.set_xticks([])
ax.set_yticks([])
img = plt.imshow([temp2.products_department], cmap=cmap)
img.set_visible(False)
fig.colorbar(img, orientation="vertical", shrink=.96)
fig.text(.76, .9, "numbers of products", fontsize=14)
plt.show()

http://www.khdw.cn/news/4687.html

相关文章:

  • 学做视频t的网站视频广告联盟平台
  • wordpress资讯网站模板公司企业网站建设方案
  • 网站建设商业阶段线上推广费用预算
  • 免费行情软件网站大全下载营销软文是什么意思
  • 网页怎么做网站地图搜索引擎优化的技巧
  • 域名138查询网seo优化软件
  • 毕业设计代做淘宝好还是网站好百度推广登录
  • 怎样建设网站施工网络推广自学
  • 第三方经营的b2b网站想要推广网页正式版
  • java企业网站项目建设官网优化哪家专业
  • 网站建设要解决哪些方面的事项seo建设者
  • 北京网站制作团队市场调研报告范文2000
  • 25转行做网站运营中国最权威的网站排名
  • 江苏营销型网站公司appstore关键词优化
  • 国内f型网页布局的网站互联网营销师国家职业技能标准
  • 房产网站建设南宁seo服务优化
  • java语言可以做网站吗目前引流最好的app
  • 长长沙网站制作百度互联网营销是什么
  • 网站打开速度太慢杭州最专业的seo公司
  • 网站后台管理怎么做杭州百度竞价推广公司
  • 网站建设 电子政务广州网络营销运营
  • 地产项目网站建设ppt短期培训就业学校
  • 音乐模板wordpress曹操论坛seo
  • 深圳住房和建设局网站预约营销培训总结
  • 郑州做网站琴推广引流图片
  • 延安网站建设网络公司品牌营销策划机构
  • 网站开发工程师职业定位重庆seo培训
  • 建设通网站vip7月新闻大事件30条
  • div使用太多影响网站收录抖音关键词排名查询工具
  • 网站如何做更新免费职业技能培训网站