Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
F
ffm-baseline
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ML
ffm-baseline
Commits
972f6248
Commit
972f6248
authored
Aug 14, 2018
by
高雅喆
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add a clickZeroUidRateDetail.py for the distribution of no click uid rate
parent
35b29f97
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
111 additions
and
1 deletion
+111
-1
getClickZeroUidRateDetail.py
eda/recommended_indexs/code/getClickZeroUidRateDetail.py
+111
-0
getTopFeatures.py
eda/test/getTopFeatures.py
+0
-1
No files found.
eda/recommended_indexs/code/getClickZeroUidRateDetail.py
0 → 100644
View file @
972f6248
import
datetime
import
pymysql
#一周之前的timestamp(1~7)
my_date1
=
datetime
.
date
.
today
()
-
datetime
.
timedelta
(
days
=
7
)
my_tm1
=
int
(
my_date1
.
strftime
(
"
%
s"
))
#二周之前的timestamp(8_14)
my_date2
=
datetime
.
date
.
today
()
-
datetime
.
timedelta
(
days
=
14
)
my_tm2
=
int
(
my_date2
.
strftime
(
"
%
s"
))
#一个月之前的timestamp(15~30)
my_date3
=
datetime
.
date
.
today
()
-
datetime
.
timedelta
(
days
=
30
)
my_tm3
=
int
(
my_date3
.
strftime
(
"
%
s"
))
#两个月之前的timestamp(31~60)
my_date4
=
datetime
.
date
.
today
()
-
datetime
.
timedelta
(
days
=
60
)
my_tm4
=
int
(
my_date4
.
strftime
(
"
%
s"
))
#三个月之前的timestamp(61~90)
my_date5
=
datetime
.
date
.
today
()
-
datetime
.
timedelta
(
days
=
90
)
my_tm5
=
int
(
my_date5
.
strftime
(
"
%
s"
))
def
get_rate_detail
(
platform
):
if
platform
==
"ios"
:
self
.
platform
=
"='App Store'"
elif
platform
==
"android"
:
self
.
platform
=
"!='App Store'"
else
:
self
.
platform
=
" is not null"
db
=
pymysql
.
connect
(
host
=
'10.66.157.22'
,
port
=
4000
,
user
=
'root'
,
passwd
=
'3SYz54LS9#^9sBvC'
,
db
=
'jerry_test'
)
cursor
=
db
.
cursor
()
sql_tmp
=
"create temporary table if not exists tmp_table as
\
(select distinct(device_id) from data_feed_exposure
\
where device_type{0}
\
and from_unixtime(time,'
%
Y-
%
m-
%
d')=date_add(curdate(), interval -1 day)
\
and device_id not in
\
(select distinct(device_id) from data_feed_click
\
where from_unixtime(time,'
%
Y-
%
m-
%
d')=date_add(curdate(), interval -1 day)
\
and device_type{1}))"
.
format
(
platform
,
platform
.
replace
(
' '
,
''
)
if
platform
[
-
2
]
==
'e'
else
platform
)
sql_last
=
"select count(distinct(device_id)) from tmp_table
\
where device_id in
\
(select distinct(device_id)
\
from data_feed_exposure
\
where device_id not in
\
(select distinct(device_id) from data_feed_exposure
\
where time < {0}))
\
union
\
select count(distinct(device_id)) from tmp_table
\
where device_id in
\
(select distinct(device_id)
\
from data_feed_exposure
\
where device_id not in
\
(select distinct(device_id) from data_feed_exposure
\
where time < {1})
\
and device_id in
\
(select distinct(device_id) from data_feed_exposure
\
where time < {0}))
\
union
\
select count(distinct(device_id)) from tmp_table
\
where device_id in
\
(select distinct(device_id)
\
from data_feed_exposure
\
where device_id not in
\
(select distinct(device_id) from data_feed_exposure
\
where time < {2})
\
and device_id in
\
(select distinct(device_id) from data_feed_exposure
\
where time < {1}))
\
union
\
select count(distinct(device_id)) from tmp_table
\
where device_id in
\
(select distinct(device_id)
\
from data_feed_exposure
\
where device_id not in
\
(select distinct(device_id) from data_feed_exposure
\
where time < {3})
\
and device_id in
\
(select distinct(device_id) from data_feed_exposure
\
where time < {2}))
\
union
\
select count(distinct(device_id)) from tmp_table
\
where device_id in
\
(select distinct(device_id)
\
from data_feed_exposure
\
where device_id not in
\
(select distinct(device_id) from data_feed_exposure
\
where time < {4})
\
and device_id in
\
(select distinct(device_id) from data_feed_exposure
\
where time < {3}))
\
union
\
select count(distinct(device_id)) from tmp_table
\
where device_id in
\
(select distinct(device_id)
\
from data_feed_exposure
\
where device_id in
\
(select distinct(device_id) from data_feed_exposure
\
where time < {4}))"
.
format
(
my_tm1
,
my_tm2
,
my_tm3
,
my_tm4
,
my_tm5
)
cursor
.
execute
(
sql_tmp
)
cursor
.
execute
(
sql_last
)
result
=
cursor
.
fetchall
()
db
.
close
()
return
result
no_click_uid_detail
=
get_rate_detail
(
"ios"
)
eda/test/getTopFeatures.py
View file @
972f6248
...
...
@@ -45,7 +45,6 @@ class TopFeatures(object):
def
get_result
(
self
,
platform
,
clk_n
=
2
,
result_types
=
"ctr"
):
"""
platform : "所有";"苹果","安卓" #方便显示
cid_type : 'diary';'answer';'question';"everything"... #方便显示
clk : dict
imp : dict
clk_n : 获取topN点击率时,过滤的点击数
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment