Skip to content

Latest commit

 

History

History
115 lines (88 loc) · 5.97 KB

期末考评项目:淘宝商品价格分析.md

File metadata and controls

115 lines (88 loc) · 5.97 KB

期末考评项目:淘宝商品价格分析

项目背景

随着人类社会活动的深度互联网化、数字化,几乎所有的经济活动都会留下“数字记载”,此时构建实时化高频化的宏观经济指标已经具备条件且意义重大。作为反映通货膨胀的重要指标CPI,目前各国主要是通过定时定点调查实体店的商品和服务价格变化得到,一般每月发布一次。中国电子商务发展迅速,线上覆盖的居民生活消费的商品和服务越来越广泛,这为构建实时高频的物价指数提供了丰富的数据源。另一方面不断发展的大数据算法和计算速度,也为编制高频CPI提供了新的工具和方法。编制CPI物价指数的一个基本假设是不同时期的产品“同质可比”,但消费者“产品篮子”更新换代越来越快,现实中“同质可比”的前提假设受到巨大冲击与挑战,所以CPI统计需要进行相应质量变化调整处理。

项目要求

尝试构建质量调整后的价格指数,并对其进行相应分析

提交要求及评估标准

1.	作业需要提交一份代码加一份报告
2.	编程环境统一使用Python3.x版本,文件夹目录可以如下
data/					—— 存放数据文件
pre_process.py/ 		—— 数据预处理
run.py 					—— 指数构建、分析等
3.	报告需至少包含三部分,1) 方法 methodology ;2)模型结果;3)结论
4.	报告以PDF形式提交。

数据使用说明

由于淘宝数据库较大,我主要提供了两种方式给同学们使用数据,具体情况如下。

方法一:使用我手动匹配过的数据

数据获取方式(百度云盘)

数据说明

  • 淘宝商品价格表,表命名格式为 price_日期.csv,如 price_20170414.csv,目前云盘上有2017年4月1号到2017年4月26号之间的数据。
  • 淘宝商品评论表,表命名格式为 buy_数字.csv,如 buy_10.csv,目前云盘上有buy_1到buy_10的数据。
  • 淘宝商品价格表和淘宝商品评论表均只包含了部分类别且进行抽样过的数据(选取了100个商品类别,包含唇膏、零食等)。
  • 【注意】淘宝商品评论表爬取规则不是每天爬取一定量的评论,而是爬取一定数量的评论后就停止爬取了,所以慎用商品评论数量的时间序列信息。
  • 如果需要更多的淘宝商品价格与评论数据请联系助教。

数据字段介绍

  • 淘宝商品价格表
字段名称 描述 补充说明
item_id 商品ID
raw_price_low 原始价格(最低价)
raw_price_high 原始价格(最高价)
raw_price_avg 原始价格(均价)
raw_price_low 促销价格(均价) 如果为零,说明没有促销;如果不为零,则为促销价格
promo_price_wavg 分型号等权平均价格 如果为零,说明没有促销;如果不为零,则为促销价格
category 商品所属种类 该字段不需要继续通过斜杠分割
  • 淘宝商品评论表
字段名称 描述 补充说明
rate_id 评论ID
item_id 商品ID
type 评论类型
rate_score 打分 -1 是差评,0是中评,1是好评,-2是未知
comment_date 评论日期
buy_cent \
buy_price 购买价格
buy_amount 购买数量
currency 支付使用货币类型 如CNY代表使用人民币支付
content 评论内容
content_append 评论追加内容
content_dayafter 评论追加天数
seller_reply 卖家回复内容
anony 是否匿名 1代表是,0代表否
photo_count 评论中包含图片数量
category 商品所属类别

温馨提示

  • 数据可能需要一定的清洗。
  • 尽管进行了抽样,但是数据还是比较大,避免一次性读取所有表到内存中。

方法二:直接通过mysql数据库访问所有数据

数据库配置:

host = '***.***.***.***'   # 有需要的同学可以向助教同学询问host
user = 'root'
passwd = ''
port = 3306
charset = 'utf8'
db = 'taobao'  # db = 'buy' / db = 'item_cat'

使用python3连接mysql实例

import pymysql
conn = pymysql.connect(host=host, user=user, passwd=passwd, db=db, port=port, charset=charset)
cursor = conn.cursor()
sql = "select * from taobao_item_price_daily_20170401 limit 100"
cursor.execute(sql)
cursor.fetchall()

数据库介绍

  • taobao:包含了淘宝商品每天的价格(2017.02.08~2018.10.30)
  • buy:包含了淘宝商品的评论信息
  • item_cat:包含了商品id和类别id的信息

具体字段含义见ppt。

温馨提示

  • 数据量比较大,大家可以选择特定的时期进行分析(比如618前后两周)
  • 同时在线的mysql实例不要太多,否则会影响服务器性能
  • 读取表可以批量读取