当前位置: 首页 > wzjs >正文

做淘宝客网站好搭建吗?网站seo关键词排名查询

做淘宝客网站好搭建吗?,网站seo关键词排名查询,建网站 域名 空间,图片自制拼图问题描述 我们需要确定"ABC_manage_channel"列的逻辑,该列的值在客户连续在同一渠道下单时更新为当前渠道,否则保留之前的值。具体规则如下: 初始值为第一个订单的渠道如果客户连续两次在同一渠道下单,则更新为当前渠…

问题描述

我们需要确定"ABC_manage_channel"列的逻辑,该列的值在客户连续在同一渠道下单时更新为当前渠道,否则保留之前的值。具体规则如下:

  • 初始值为第一个订单的渠道
  • 如果客户连续两次在同一渠道下单,则更新为当前渠道
  • 否则保持前一个值不变

数据准备

首先创建orders表并插入测试数据:

CREATE OR REPLACE TABLE orders (customerid INTEGER,channel VARCHAR(20),order_date DATE
);INSERT INTO orders (customerid, channel, order_date) VALUES
(1, 'TMALL', '2024-11-01'),
(1, 'TMALL', '2024-11-02'),
(1, 'TMALL', '2024-11-03'),
(1, 'douyin', '2024-11-25'),
(1, 'JD', '2025-01-13'),
(1, 'JD', '2025-01-14'),
(1, 'douyin', '2025-03-02'),
(1, 'douyin', '2025-03-27'),
(3, 'JD', '2024-04-23'),
(4, 'JD', '2025-02-15'),
(5, 'JD', '2024-08-30'),
(6, 'douyin', '2024-10-05'),
(7, 'JD', '2024-05-29'),
(7, 'douyin', '2024-09-15'),
(7, 'Wholesale', '2024-12-22'),
(7, 'JD', '2025-03-19'),
(8, 'douyin', '2024-08-01'),
(8, 'douyin', '2024-08-07'),
(8, 'douyin', '2024-11-15'),
(9, 'JD', '2025-03-19'),
(10, 'douyin', '2024-07-30'),
(10, 'douyin', '2024-12-27'),
(10, 'douyin', '2025-03-21'),
(10, 'douyin', '2025-03-23');

解决方案

要解决这个问题,我们需要为每个客户的订单生成一个名为“ABC_manage_channel”的列,其值根据客户是否连续在同一渠道下单来更新。具体规则如下:

  • 初始值为第一个订单的渠道。
  • 如果客户连续两次在同一渠道下单,则更新为当前渠道。
  • 否则保持前一个值不变。

方法思路

  1. 数据准备:读取并预处理数据,确保订单按日期排序。
  2. 分组处理:按客户分组,对每个客户的订单进行处理。
  3. 逻辑实现:遍历每个客户的订单,初始化第一个订单的值为其渠道。对于后续订单,如果当前渠道与前一个订单相同,则更新为当前渠道,否则保持前一个值。

解决代码

import pandas as pd# 创建DataFrame
orders = pd.DataFrame({'customerid': [1, 1, 1, 1, 1, 1, 1, 1, 3, 4, 5, 6, 7, 7, 7, 7, 8, 8, 8, 9, 10, 10, 10, 10],'channel': ['TMALL', 'TMALL', 'TMALL', 'douyin', 'JD', 'JD', 'douyin', 'douyin', 'JD', 'JD', 'JD', 'douyin', 'JD', 'douyin', 'Wholesale', 'JD', 'douyin', 'douyin', 'douyin', 'JD', 'douyin', 'douyin', 'douyin', 'douyin'],'order_date': ['2024-11-01', '2024-11-02', '2024-11-03', '2024-11-25', '2025-01-13', '2025-01-14', '2025-03-02', '2025-03-27', '2024-04-23', '2025-02-15', '2024-08-30', '2024-10-05', '2024-05-29', '2024-09-15', '2024-12-22', '2025-03-19', '2024-08-01', '2024-08-07', '2024-11-15', '2025-03-19', '2024-07-30', '2024-12-27', '2025-03-21', '2025-03-23']
})# 转换日期格式
orders['order_date'] = pd.to_datetime(orders['order_date'])def compute_abc(group):# 按日期排序group = group.sort_values('order_date')abc = []prev_channel = Noneprev_abc = Nonefor idx, row in group.iterrows():if len(abc) == 0:# 第一个订单current_abc = row['channel']prev_channel = row['channel']prev_abc = current_abcabc.append(current_abc)else:current_channel = row['channel']if current_channel == prev_channel:current_abc = current_channelelse:current_abc = prev_abcabc.append(current_abc)prev_channel = current_channelprev_abc = current_abcgroup['ABC_manage_channel'] = abcreturn group# 应用处理函数
result = orders.groupby('customerid', group_keys=False).apply(compute_abc)print(result)

代码解释

  1. 数据准备:使用Pandas创建DataFrame,并将订单日期转换为日期类型。
  2. 处理函数compute_abc
    • 对每个客户的订单按日期排序。
    • 遍历每个订单,第一个订单的初始值为其渠道。
    • 后续订单判断当前渠道是否与前一个相同,相同则更新,否则保持前一个值。
  3. 分组应用:按客户分组应用处理函数,生成最终结果。
http://www.dtcms.com/wzjs/276495.html

相关文章:

  • 58同城类似的网站开发百度网盘搜索引擎入口官网
  • 网站群管理平台登封网站设计
  • 网站超市源码seo排名优化北京
  • 蓝海国际版网站建设系统深圳市社会组织总会
  • 一些大型网站的服务器需要租用多大的带宽企业查询软件
  • 中山做营销型网站免费招收手游代理
  • php网站怎么做seo怎样做好竞价推广
  • 本地电脑做视频网站 外网连接关键词seo深圳
  • 党建网站建设现状关键词优化seo排名
  • qq空间的网站如何把一个关键词优化到首页
  • 成都建立网站的公司网站长沙哪里有网站推广优化
  • 南京做网站建设的公司哪家好站长工具seo优化系统
  • 公司网站应该是市场部做吗企业网络营销推广方案
  • 唐山网站建设学徒网站发帖推广平台
  • 海宁市住房与城乡规划建设局网站足球直播在线直播观看免费cctv5
  • 扬中营销网站建设关键词搜索引擎工具
  • phpcms转wordpressseo优化技术培训
  • 邢台网站制作哪家好如何在互联网上做推广
  • 义乌品牌网站建设淘宝关键词挖掘工具
  • 罗岗网站建设域名注册费用
  • 服务五象新区开发建设指挥部网站各大网站收录查询
  • 抓取网站访客qq代码seo搜索引擎优化求职简历
  • 童装网站建设google chrome官网
  • 怎样建立和设计公司网站网站推广是做什么的
  • 专做山珍的网站企业qq多少钱一年
  • 宁波做网站公司软文推广营销服务平台
  • 胶州做网站湖南seo推广
  • 网站滚动效果怎么做沈阳seo排名外包
  • 三站合一网站建设最新seo视频教程
  • 建设网站各方面费用预算南昌seo优化