123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- import sys
- from operator import itemgetter
- import json
- import pandas as pd
- if __name__=="__main__":
-
- nowdate=sys.argv[1]
- vlog='0'
- love_live = 4
- data_path = "./data/hour_video_data_"+nowdate
- f = open(data_path)
-
-
- index = 0
- data_dict = {}
-
- while True:
- line = f.readline()
- if not line:
- break
- if index==0:
- index += 1
- continue
- index +=1
- items = line.strip().split("\t")
-
- if len(items)<9:
- continue
- vid = items[1]
- view_users = int(items[2])
- view_pv = int(items[3])
- play_users = int(items[4])
- play_pv = int(items[5])
- share_users = int(items[6])
- share_pv = int(items[7])
- return_users = int(items[8])
-
- if vid not in data_dict:
- data_dict[vid] = (view_users, view_pv, play_users, play_pv, share_users, share_pv, return_users)
- else:
- item_info = data_dict[vid]
- view_users = item_info[0]+view_users
- view_pv = item_info[1]+view_pv
- play_users = item_info[2]+play_users
- play_pv = item_info[3]+play_pv
- share_users = item_info[4]+share_users
- share_pv = item_info[5]+share_pv
- return_users = item_info[6]+return_users
- data_dict[vid] = (view_users, view_pv, play_users, play_pv, share_users, share_pv, return_users)
-
- f.close()
- info_dict = {}
- hour_data_path = "./data/sorted_hour_info_"+nowdate
- f = open(hour_data_path, 'w')
- for k, v in data_dict.items():
-
- return_users = v[6]
-
- view_users = v[0]
- view_pv = v[1]
- share_pv = v[5]
- share_users = v[4]
- play_users = v[2]
-
- k_score = float(return_users)/(float(view_users)+5)
- k_score2 = float(return_users)/(float(view_pv)+5)
-
- share_score = float(share_pv)/(float(view_pv)+5)
- backrate = float(return_users)/(float(view_users)+5)
-
- score_info = [k_score2, share_score*backrate, share_score, backrate, view_users, view_pv, play_users, play_pv, share_users, share_pv, return_users]
- score_info = json.dumps(score_info)
- info_dict[k] = score_info
- f.write(k+"\t"+score_info+"\n")
-
- f.close()
-
|