修复显示11月23号之前的数据
This commit is contained in:
parent
713ed2d7e2
commit
b461ec87f4
@ -3,7 +3,7 @@ import mimetypes
|
|||||||
from collections import defaultdict
|
from collections import defaultdict
|
||||||
import time
|
import time
|
||||||
from urllib.parse import quote
|
from urllib.parse import quote
|
||||||
|
import re
|
||||||
import pandas as pd
|
import pandas as pd
|
||||||
import numpy as np
|
import numpy as np
|
||||||
from fastapi import APIRouter, Depends, Request
|
from fastapi import APIRouter, Depends, Request
|
||||||
@ -75,7 +75,42 @@ async def ltv_model_sql(
|
|||||||
split_="""AND 1 """
|
split_="""AND 1 """
|
||||||
news_sql = split_sql[0] + split_+new_sql + split_sql[1] + split_+new_sql+ split_sql[2]+split_+split_sql[3]
|
news_sql = split_sql[0] + split_+new_sql + split_sql[1] + split_+new_sql+ split_sql[2]+split_+split_sql[3]
|
||||||
df = await ckdb.query_dataframe(news_sql)
|
df = await ckdb.query_dataframe(news_sql)
|
||||||
|
# 判断11月23号之前的数据
|
||||||
|
list_data_range=analysis.date_range
|
||||||
|
liststr_data_range=[]
|
||||||
|
for i in list_data_range:
|
||||||
|
liststr_data_range.append(str(i))
|
||||||
|
quota = analysis.event_view['quota']
|
||||||
|
#判断是设备LTV则执行下面代码,如是角色实充LTV则不执行
|
||||||
|
if quota == '#distinct_id':
|
||||||
|
if '2021-11-22' in liststr_data_range or '2021-11-22' >=liststr_data_range[-1]:
|
||||||
|
#取搜索最后为11.23号之前的数据
|
||||||
|
if '2021-11-22' >=liststr_data_range[-1]:
|
||||||
|
news_sql=""""""
|
||||||
|
split_sql=sql.split('AND is_new_device = 1')
|
||||||
|
new_sql=split_sql[0]+split_sql[1]+split_sql[2]
|
||||||
|
news_sql+=new_sql
|
||||||
|
df_twenty_three=await ckdb.query_dataframe(news_sql)
|
||||||
|
#取包含有11.23号之前和23号之后的那一段
|
||||||
|
else:
|
||||||
|
start_date=str(list_data_range[0])
|
||||||
|
end_date='2021-11-22'
|
||||||
|
news_sql = """"""
|
||||||
|
split_sql = sql.split('AND is_new_device = 1')
|
||||||
|
for i in split_sql:
|
||||||
|
news_sql += i
|
||||||
|
#用正则表达式切时间
|
||||||
|
zhengze_time=r'\d{4}-\d{1,2}-\d{1,2}'
|
||||||
|
zhengze_sql=re.split(zhengze_time,news_sql)
|
||||||
|
zz_new_sql=zhengze_sql[0]+start_date+zhengze_sql[1]+end_date+zhengze_sql[2]+start_date+zhengze_sql[3]+end_date+zhengze_sql[4]
|
||||||
|
zz_news_sql=""""""
|
||||||
|
zz_news_sql+=zz_new_sql
|
||||||
|
df_twenty_three = await ckdb.query_dataframe(zz_news_sql)
|
||||||
|
#上下合并两组数据,忽略以前的索引下标
|
||||||
|
df= pd.concat([df,df_twenty_three], axis=0, ignore_index=True)
|
||||||
|
df.sort_values('date', inplace=True)
|
||||||
|
#去重
|
||||||
|
#df.drop_duplicates(inplace=True)
|
||||||
quota = res['quota'] #字段名
|
quota = res['quota'] #字段名
|
||||||
ltv_n = res['ltv_n']
|
ltv_n = res['ltv_n']
|
||||||
#df = await ckdb.query_dataframe(sql)
|
#df = await ckdb.query_dataframe(sql)
|
||||||
|
Loading…
Reference in New Issue
Block a user