getRate.py 4.1 KB
import datetime
from getAnswerImpRate import get_all_answer_imp_rate,get_ios_answer_imp_rate,get_android_answer_imp_rate
from getActivateUidCtr import get_all_click_one_rate,get_ios_click_one_rate,get_android_click_one_rate
from getClickAnswerUidRate import get_all_click_answer_rate,get_ios_click_answer_rate,get_android_click_answer_rate
from getClickDiaryUidRate import get_all_click_diary_rate,get_ios_click_diary_rate,get_android_click_diary_rate
from getClickZeroUidRate import get_all_click_zero_rate,get_ios_click_zero_rate,get_android_click_zero_rate

def get_yesterday_date():
	today = datetime.date.today()
	yesterday = today - datetime.timedelta(days=1)
	yesterday = yesterday.strftime("%Y%m%d")
	return yesterday


def result2file(fpath):
	with open(fpath,'w') as f:
		f.write("#注意:以下数据都是首页的\n")
		f.write("#1. 比例特征\n")
		f.write("=================================================================\n")
		f.write("#1.1问答曝光占比(=问答被曝光数/总cid被曝光数)\n")
		f.write("平台"+"\t"+"问答被曝光数"+"\t"+"总cid被曝光数"+"\t"+"问答被曝光数占比\n")
		all_answer_imp_rate = get_all_answer_imp_rate()
		ios_answer_imp_rate = get_ios_answer_imp_rate()
		android_answer_imp_rate = get_android_answer_imp_rate()
		lst = [all_answer_imp_rate,ios_answer_imp_rate,android_answer_imp_rate]
		for i in lst:
			line = ""
			for j in i:
				line += str(j) + '\t'
			line = line[:-1]+'\n'
			f.write(line)
		print("1.1已将问答曝光占比存入文件")

		f.write("#1.2有点击用户点击率(=有点击用户点击次数/有点击用户曝光次数)\n")
		f.write("平台"+"\t"+"有点击用户点击次数"+"\t"+"有点击用户曝光次数"+"\t"+"有点击用户点击率\n")
		all_click_one_rate = get_all_click_one_rate()
		ios_click_one_rate = get_ios_click_one_rate()
		android_click_one_rate = get_android_click_one_rate()
		lst = [all_click_one_rate,ios_click_one_rate,android_click_one_rate]
		for i in lst:
			line = ""
			for j in i:
				line += str(j) + '\t'
			line = line[:-1]+'\n'
			f.write(line)
		print("1.2已将有点击用户点击率存入文件")

		f.write("#1.3点击问答用户占比(=点击问答用户数/曝光问答用户数)\n")
		f.write("平台"+"\t"+"点击问答用户数"+"\t"+"曝光问答用户数"+"\t"+"点击问答用户占比\n")
		all_click_answer_rate = get_all_click_answer_rate()
		ios_click_answer_rate = get_ios_click_answer_rate()
		android_click_answer_rate = get_android_click_answer_rate()
		lst = [all_click_answer_rate,ios_click_answer_rate,android_click_answer_rate]
		for i in lst:
			line = ""
			for j in i:
				line += str(j) + '\t'
			line = line[:-1]+'\n'
			f.write(line)
		print("1.3已将点击问答用户占比存入文件")

		f.write("#1.4点击日记用户占比(=点击日记用户数/曝光日记用户数)\n")
		f.write("平台"+"\t"+"点击日记用户数"+"\t"+"曝光日记用户数"+"\t"+"点击日记用户占比\n")
		all_click_diary_rate = get_all_click_diary_rate()
		ios_click_diary_rate = get_ios_click_diary_rate()
		android_click_diary_rate = get_android_click_diary_rate()
		lst = [all_click_diary_rate,ios_click_diary_rate,android_click_diary_rate]
		for i in lst:
			line = ""
			for j in i:
				line += str(j) + '\t'
			line = line[:-1]+'\n'
			f.write(line)
		print("1.4已将点击日记用户占比存入文件")

		f.write("#1.5无点击用户占比(=无点击用户数/有曝光用户数)\n")
		f.write("平台"+"\t"+"无点击用户数"+"\t"+"有曝光用户数"+"\t"+"无点击用户占比\n")
		all_click_zero_rate = get_all_click_zero_rate()
		ios_click_zero_rate = get_ios_click_zero_rate()
		android_click_zero_rate = get_android_click_zero_rate()
		lst = [all_click_zero_rate,ios_click_zero_rate,android_click_zero_rate]
		for i in lst:
			line = ""
			for j in i:
				line += str(j) + '\t'
			line = line[:-1]+'\n'
			f.write(line)
		print("1.5已将无点击用户占比存入文件")


def main():
	output_path = "../data/rate_features_%s.txt" % get_yesterday_date()
	print("开始获取比例特征...")
	result2file(output_path)
	print("已将所有比例特征存入文件")


if __name__ == '__main__':
	main()