数据
链接
以下是本数据集的13个特征变量的详细说明:
- order_id:订单ID,数字组合而成,例如4283851335。
- order_date:订单日期,格式为YYYY-MM-DD,例如2013-10-17。
- order_time:订单日期,格式为HH:MM:SS,例如12:54:44。
- cat:商品一级类别,字符串型,包含中文、英文。
- attribution:商品所属的渠道来源,字符串型,包含中文、英文。
- pro_id:商品ID,数字组合而成。
- pro_brand:商品品牌,字符串型,包含中文、英文。
- total_money:商品销售金额,浮点型。
- total_quantity:商品销售数量,整数型。
- order_source:订单来源,从哪个渠道形成的销售,字符串型,包含中文、英文。
- pay_type:支付类型,字符串型,包含中文、英文。
- use_id:用户ID,由数字和字母等组成的字符串。
- city:用户订单时的城市,字符串型,中文。
数据清洗
# 模块导入
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline# 数据载入
dtypes = {'order_id': np.object,'pro_id': np.object,'use_id': np.object}
df = pd.read_csv('abnormal_orders.txt', dtype=dtypes)df.head(3).T

# 数据行列
df.shape
#(134190, 12)# 缺失值
df.isna().sum()

不是很多直接舍弃:
# 弃去缺失值
df.dropna(inplace=True)
时间数据处理:
# 合并时间,并更改类型,弃去原来时间
df['datetime'] = (df.order_date + ' ' + df.order_time ).astype('datetime64[ns]')
df.drop(columns=['order_date', 'order_time', 'abnormal_label'], inplace=True)# 设置时间段
start_time = pd.datetime(2013, 9, 1