当前位置:   article > 正文

机器学习每周挑战——百思买数据

机器学习每周挑战——百思买数据

最近由于比赛,断更了好久,从五一开始不会再断更了。这个每周挑战我分析的较为简单,有兴趣的可以将数据集下载下来试着分析一下,又不会的我们可以讨论一下。

这是数据集:

  1. import pandas as pd
  2. import numpy as np
  3. import matplotlib.pyplot as plt
  4. import seaborn as sns
  5. from pyecharts.charts import Bar
  6. import plotly.express as px
  7. df = pd.read_csv("Best Buy products.csv")
  8. pd.set_option("display.max_columns",1000)
  9. pd.set_option("display.max_rows",1000)

先导入我们所需要用到的库,然后分析数据集

# \字段   说明
# url   链接
# product_id    产品ID
# title 标题
# images    图片链接
# final_price   最终价格
# currency  货币
# discount  折扣
# initial_price 初始价格
# offer_price   促销价格
# root_category 品类
# breadcrumbs   导航栏
# release_date  发布日期
# esrb_rating   ESRB评级("E for Everyone"(适合所有人)、"T for Teen"(适合青少年)、"M for Mature"(适合成年人)等等)
# rating    评分
# reviews_count 评价数量
# questions_count   提问数量
# hot_offer 优惠
# open_box  打开过但未使用的商品(这些商品通常是退货、展示品或者被取消订单的商品。虽然它们可能已经被打开过,但它们通常处于完好状态,并且经过了检查和测试以确保其功能正常。这些商品通常以更低的价格销售,因为它们已经不再是全新的商品,但仍然提供一定程度的折扣。)
# availability  商品可用性(即该商品当前是否可供购买:有货;库存有限;缺货;即将上市;预购)
# you_maight_also_need  你可能还需要
# variations    产品配置选项
# highlights    产品亮点
# product_description   产品描述
# features_summary  功能总结
# features  功能特性
# whats_included    包含的配件
# q_a   用户问答
# product_specifications    产品参数
# amount_of_stars   获得的星数
# customer_images   用户提供的照片
# customers_ultimately_bought   用户最终下单的产品
# deals_on_realated_items   相关其他商品的优惠或特价优惠
# frequently_bought_with    通常一起搭配购买的产品
# recommend_percentage  推荐指数

上面是关于字段的说明,由于这种数据属于电商类型的数据,我们一般会分析评分,折扣,成交价格等特征与交易数量之间的关系,我们还可以从用户回答来做文本分析等来分析商品的好坏,预测交易数量等,这里我就不进行分析了,感兴趣的可以试一试,我后面会更新电商评论的文本类型的分析。

  1. # 促销策略分析
  2. df['final_price'] = df['final_price'].str.replace('$','').str.replace(',','').astype(float)
  3. df['discount'] = df['discount'].str.replace('Save','').str.replace(',','').str.replace('$','').astype(float)
  4. df['discount'] = df['discount'].fillna(0)
  5. # print(df.info())
  6. plt.figure(figsize=(10,8))
  7. final_price = df['final_price'].value_counts().reset_index()
  8. plt.bar(final_price['final_price'][10], final_price['count'][10], color='red', label='final_price')
  9. plt.figure(figsize=(10,8))
  10. discount_price = df['discount'].value_counts().reset_index()
  11. plt.plot(discount_price['discount'], discount_price['count'], color='blue', label='discount_price')
  12. bin = [0,1,2,3,4,5]
  13. label = [1,2,3,4,5]
  14. df['rating'] = pd.cut(df['rating'],bins=bin,labels=label)
  15. sns.countplot(x=df['rating'],color='Blue',dodge=False)
  16. plt.title("评分数据")
  17. plt.tight_layout()
  18. plt.show()
  19. root_category_counts = df['root_category'].value_counts().reset_index()
  20. # print(root_category_counts)
  21. fig = px.bar(root_category_counts,
  22. x='count', y='root_category',
  23. orientation='h',
  24. title='产品分类排行榜',
  25. labels={'count': '数量', 'root_category': '种类名称'})
  26. fig.update_layout(yaxis_categoryorder='total ascending') # 将类别按产品数量升序排列
  27. # 更新字体样式
  28. fig.update_layout(
  29. template="plotly_white",
  30. font=dict(
  31. size=14,
  32. color="#000000"
  33. )
  34. )
  35. fig.show()

这里我绘制了折扣和评分之间的关系图,从上面可以看出好的商品是不打折的,就像旭旭宝宝带的货,只便宜一块钱。最后我绘制了各个商品的销售数据。

 

 

 这篇每周挑战确实简陋了不少,大家如果对电商数据比较感兴趣,后面我在完善一下这篇文章

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/523186
推荐阅读
相关标签
  

闽ICP备14008679号