【学习记录】阿里天池SQL练习题_08 python和SQL方式

本文记录了在阿里天池SQL练习中,如何使用Python和SQL处理O2O优惠券使用数据,找出2016年6月使用次数最多的顾客。通过合并《ccf_online_stage1_train.csv》和《ccf_offline_stage1_train.csv》数据,处理NaN,新增计数列,并对比Python与SQL在处理此类问题上的差异。
摘要由CSDN通过智能技术生成

合并数据,汇总统计

数据来源:天池新人实战赛o2o优惠券使用预测赛题与数据-天池大赛-阿里云天池

使用Coupon Usage Data for O2O中的数据集《ccf_online_stage1_train.csv》和《ccf_offline_stage1_train.csv》 试找出在2016年6月期间,线上线下累计优惠券使用次数最多的顾客。

概要:此题卡壳比较严重,乍看要求很简单,用python很实现容易。但过程中发现python相比SQL有一些不同,导致在处理此题反而不容易理解

先导入数据。此次数量较大,同时需要导入2个数据集,直接从本地下载导入。

import pandas as pd
import numpy as np
df_online=pd.read_csv('../data/阿里天池/ccf_online_stage1_train.csv')
df_offline=pd.read_csv('../data/阿里天池/ccf_offline_stage1_train.csv')

先处理数据量较小的offline数据集

首先把NaN数据进行处理,筛出2016年6月期间的数据集

同时新增一列number,并统一赋值1。原因是这样的,此题是要求按User_id作为分组索引,然后汇总统计优惠券的使用次数,但数据集中没有对应的优惠券ID的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值