仅作个人学习记录 jupyter 数据分析
(资料图片仅供参考)
对列表数据进行处理
ad_list = [{'投放账户': '戴戴戴师兄', '广告计划名称': '《戴你玩转数据分析》_职场新人_18-24_1-6', '广告计划ID': 'AD666', '优化目标': '直播间成交', '客单价': 88, '消耗': 2245, '直播间曝光数': 5893, '直播间观看数': 2298, '商品点击数': 1654, '商品下单数': 160, '商品成交数': 14, 'GMV': 123200, '成交金额': 123200, '投放日期': '2023-01-01'}, {'投放账户': '戴戴戴师兄', '广告计划名称': '《商业分析课程》_数据分析-商业分析_22-35_1-6', '广告计划ID': 'AD888', '优化目标': '直播间成交', '客单价': 288, '消耗': 3231, '直播间曝光数': 3274, '直播间观看数': 1702, '商品点击数': 1174, '商品下单数': 102, '商品成交数': 10, 'GMV': 288000, '成交金额': 288000, '投放日期': '2023-01-01'}, {'投放账户': '戴戴戴师兄', '广告计划名称': '《数据分析工具课程》_数据分析_22-35_1-6', '广告计划ID': 'AD999', '优化目标': '直播间成交', '客单价': 188, '消耗': 3784, '直播间曝光数': 5865, '直播间观看数': 4633, '商品点击数': 2779, '商品下单数': 200, '商品成交数': 27, 'GMV': 507600, '成交金额': 507600, '投放日期': '2023-01-01'}]
ad_list
1.取出数据,并赋值给一个变量
ad_1 = ad_list[0]
ad_1
2.处理重复的字段
del ad_1['成交金额']
ad_1
3.处理异常值
ad_1 ['GMV']=ad_1 ['GMV'] / 100
ad_1
4.增加字段(键)ROI 成交额/成本
ad_1['ROI'] = round(ad_1['GMV'] / ad_1['消耗'] , 2) #使用round函数是为了只保留2位小数
ad_1
5.广告策略分割
ad_1['广告计划名称'] .split('_')
ad_1['商品名称']=ad_1['广告计划名称'].split('_')[0]
ad_1['人群标签']= ad_1['广告计划名称'].split('_')[1]
ad_1['用户年龄']= ad_1['广告计划名称'].split('_')[2]
ad_1['用户等级']= ad_1['广告计划名称'].split('_')[3]
ad_1
对文件数据进行处理:将上述1-5步应用到文件中的每一个广告计划里
1.读取数据
with open('历史数据.txt','r',encoding='utf-8') as f:
history=()
history
2.读取出来的文本是字符串类型(引号),不可处理,要用eval函数去掉引号,变成可处理的
history=eval(history)
history
3.循环 分割广告策略
for i in range(len(history)):
ad_1=history[i]
del ad_1['成交金额']
ad_1['GMV']=ad_1['GMV']/100
ad_1['ROI']= round( ad_1['GMV'] / ad_1['消耗'],2)
ad_1['广告计划名称'].split('_')
ad_1['ad']=ad_1['广告计划名称'].split('_')[0]
ad_1['tag']=ad_1['广告计划名称'].split('_')[1]
ad_1['age']=ad_1['广告计划名称'].split('_')[2]
ad_1['level']=ad_1['广告计划名称'].split('_')[3]
history
5.提取roi大于1 的广告计划 if语句
good_list=[]
for i in range(len(history)):
if history[i]['ROI']>=1 :
good_(history[i])
else:
pass
good_list
使用函数,将上述步骤一步到位
def process_data(data_list):
ad_list=[]
for i in range(len(data_list)):
ad_1=data_list[i]
del ad_1['成交金额']
ad_1['GMV']=ad_1['GMV']/100
ad_1['ROI']= round( ad_1['GMV'] / ad_1['消耗'],2)
ad_1['广告计划名称'].split('_')
ad_1['ad']=ad_1['广告计划名称'].split('_')[0]
ad_1['tag']=ad_1['广告计划名称'].split('_')[1]
ad_1['age']=ad_1['广告计划名称'].split('_')[2]
ad_1['level']=ad_1['广告计划名称'].split('_')[3]
if ad_1['ROI']>=1:
ad_(ad_1)
else:
pass
return ad_list
with open('历史数据.txt','r',encoding='utf-8') as f:
history=()
history=eval(history)
history
process_data(history)
学习内容来自@戴戴戴师兄:BV1ZM4y1u7uF
下一篇:最后一页
X 关闭
Copyright 2015-2022 起点空净网版权所有 备案号:皖ICP备2022009963号-12 联系邮箱: 39 60 29 14 2@qq.com