- 博客(90)
- 收藏
- 关注
原创 regex:取索引中的id
SQLselect date,content_id,rec_queue_name_,-- w:word,到:结束,选第一个regexp_extract(candidate_key_,'id=(\\w+):',1) as candidate_key,count(1) as exposurefrom eventswhere date >= '2021-10-27' and date <= '2021-11-01'and event = 'imp_detail_page'and chan
2021-11-04 11:11:43
361
原创 盖帽处理
异常值处理 - 盖帽def cap1(x, quantile=[0.05, 0.95]): """盖帽法处理异常值 Args: x:pd.Series列,连续变量 quantile:指定盖帽法的上下分位数范围 """ # 生成分位数 Q05, Q95=x.quantile(quantile).values.tolist() # 替换异常值为指定的分位数 if Q05 > x.min(): x = x.copy() # why copy:为了
2021-04-27 18:23:59
594
原创 python itemgetter()
itemgetter() : 返回索引对应的数值from operator import itemgettera = [1,2,3,4,5]b = itemgetter(0)c = itemgetter(0,1,2)d = itemgetter(0,2,1,3)b(a) : 0c(a) : (1, 2, 3)d(a) : (1, 3, 2, 4)
2021-04-25 15:40:43
340
原创 批量读取文件夹下的文件+数据合并+韦恩图
批量读取import pandas as pdfrom functools import reduceimport os# 被下线过的iddata1 = pd.read_csv('/Users/bella/Downloads/20210125_video_offline_userid_uniq.txt',header=None)data2 = pd.read_csv('/Users/bella/Downloads/20210127_video_offline_userid_uniq.txt',
2021-02-19 18:41:02
275
1
原创 准召率理解
准召率AUCAUC(Area Under Curve)被定义为ROC曲线下与坐标轴围成的面积,显然这个面积的数值不会大于1。又由于ROC曲线一般都处于y=x这条直线的上方,所以AUC的取值范围在0.5和1之间。AUC越接近1.0,检测方法真实性越高;等于0.5时,则真实性最低,无应用价值。ROC(receiver operating characteristic curve)接收者操作特征曲线,是由二战中的电子工程师和雷达工程师发明用来侦测战场上敌军载具(飞机、船舰)的指标,属于信号检测理论。
2021-01-13 19:43:47
8074
原创 线性方程与log函数可视化
代码import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport mathx = np.random.randint(0,100,10000)y1 = xdata = pd.DataFrame({'x':x,'y1':y1})data['y2'] = data['x'].apply(lambda x:np.log2(x))data.head()x = data['x'].valuesy1 = d
2021-01-08 12:28:06
679
原创 相关性与标准化
相关性定义协方差:相关系数:因此,相关系数本身就把量纲去掉了测试原数据import pandas as pdfrom sklearn import preprocessingimport numpy as npdata=[[78,521,602,2865],[144,-600,-521,2245],[146,413,435,2571]]df=pd.DataFrame(data)dfdf.corr()标准化zs=preprocessing.StandardScaler
2020-11-18 17:56:28
1984
1
原创 python unstack pivot 列转行
https://www.cnblogs.com/traditional/p/11967360.html行转列#将"姓名"和"科目"设置为索引, 然后取出"分数"这一列, 得到的对应的具有二级索引的Series对象two_level_index_series = df.set_index([“姓名”, “科目”])[“分数”]此时得到的Series就是一个具有二级索引的Series一级索引就是"姓名"这一列, 二级索引就是"科目"这一列print(two_level_index_series)
2020-10-13 17:33:02
501
原创 python eval 转换k m到乘法计算
原数据lambda函数处理我之前写了各种if substr函数,各种报错正确到热泪盈眶的函数data['Followers/Fans'] = data['Followers/Fans'].str.replace('k|K','*1000').str.replace('m|M','*1000000').fillna('0')data['Followers/Fans'] = data['Followers/Fans'].apply(eval)报错函数# def trans(x):#
2020-09-28 14:46:20
789
原创 bins分箱图
_ = data.groupby('bins').sum()[['counts']].reset_index()plt.figure(figsize=(15, 10))sns.barplot(x="bins", y="counts", data=_)plt.xticks(rotation=30)#rotation控制倾斜角度
2020-09-27 12:35:29
1087
原创 关联规则
定义3.提升度(Lift)提升度表示含有X的条件下,同时含有Y的概率,与只看Y发生的概率之比。提升度反映了关联规则中的X与Y的相关性,提升度>1且越高表明正相关性越高,提升度<1且越低表明负相关性越高,提升度=1表明没有相关性,即相互独立。 Lift(X→Y) = P(Y|X) / P(Y)满足最小支持度和最小置信度的关联关系叫做强关联关系如果lift>1,叫做有效的强关联关系,如果lift<=1,叫做无效的强关联关系特别的如果lift(X-&
2020-08-31 01:33:44
908
原创 python百分比成功的桑吉图
转换数据格式echarts JS 格式准备在线Echarts JS: https://jshare.com.cn/demos/eYEsqkdef get_web_data(data): links = [] for i in range(data.shape[0]): link = [] link.append(data.iloc[i][1]) link.append(data.iloc[i][2]) link.app
2020-08-25 15:35:53
412
原创 桑基流向图 - HiveSQL准备
老工厂由于老工厂的app表是每日全量表,因此才有app_type1和app_type2,将“上半月活跃下半月不活跃”,和“上半月不活跃下半月活跃”分开来写,因为app_type1和app_type2中,都有全量的imei,所以可以用left jpin where t2.imei is null 的方式,找到“上半月活跃下半月不活跃”的用户,反之同理。而且,app_type1为了找到“上半月活跃下半月不活跃”的使用了某app的用户,注意这里是两个维度,既要是同一个用户,也要是对于同一个app而言。我之前
2020-08-24 15:53:01
671
原创 python lambda多列数据计算
单列计算if elsedata_df['曝光内容'] = data_df['曝光内容比'].apply(lambda x:'high' if x>= exp_high else ('low' if x<=exp_low else 'medium')) 多列计算# a:x['曝光内容'], b:x['点赞'], c:x['算法可以run出的内容']def test(a, b, c): if(a == 'high' or a == 'medium') and (b == '
2020-08-13 15:56:04
2572
原创 互联网最扎心岗位对比
关注我!只要10分钟,包你学会数据分析下文,是我从“拉钩招聘”爬取的互联网行业各个地区,各个岗位的讯息。哪个城市最有发展前景?哪个岗位最有可能成为打工皇帝?哪个职业最容易跨界...
2020-06-30 09:00:00
455
原创 HiveSQL case when or
错误不要图简单把多数值写在一个括号里select imei,(case when description like ('%华为%' or '%HUAWEI%' or '%vivo%' or '%oppo%' or '%iphone%' or '%SAMSUNG%' or '%三星 N%' or '%三星 S%' or '%一加%' or '%oneplus%' or '%Galaxy%' or '%荣耀%' or '%魅 族%' or '%MEIZU%' or '%SONY%') then 'pu
2020-06-24 10:36:03
2443
1
原创 连续活跃的用户
题目1现在有一张用户活跃全量表,列有id,活跃日期(全部),分区如何求得最大连续活跃天数的IDway1with t1 as (select id,row_number() over(partition by id order by lastactivetime asc) as ranks,lastactivetime from table)select id,ate_sub(lastactivetime,ranks) as difftime,min(lastactiveimte) as m
2020-05-28 16:29:28
377
原创 SQL数据准备-桑吉图
长短视频流入流出计算之前写了好久都写错了没有数据。。。-- app流入流出的定义:app1在[-32,-16]活跃 >= 1次,app2不活跃;app1在[-15,0]不活跃 ,app2活跃 >= 2次-- 上半月活跃-- 一个imei对应多个appwith period_table1 as (selectimeimd5,appname,apppackage,tag,active_countsfrom (select appname,apppackage,tagfrom m
2020-05-20 15:32:02
690
原创 SQL Leetcode练习题
文章目录第二高的薪水错误正确ifnulllimit offset第 n 高的薪水 - 方程传参连续出现N次-lag() over()错误正确工资超过其经理-巧用内链接与笛卡尔积分组最高上升的温度lagcross join行程和用户第二高的薪水编写一个 SQL 查询,获取 Employee 表中第二高的薪水(Salary) 。±—±-------+| Id | Salary |±—±-------+| 1 | 100 || 2 | 200 || 3 | 300 |±—
2020-05-19 16:32:42
1422
原创 SQL必考-内链接
连续活跃http://dp.pt.xiaomi.com/job/job_details/339836with intern_t as (-- 每月月初调度select id,brand,modelname,from_unixtime(cast(lastactivetime/1000 as int),'yyyy-MM-dd') as lastactivetime,-- 重点!!! 必须是dense rank,因为device表是每日全量表,如果某日不活跃,则会按照上次活跃日期重复上报dense_r
2020-05-14 19:30:56
208
原创 机器学习-为什么需要样本均衡
在正样本和负样本中,预测对和预测错的比例一致,但是准确率却因为样本比例不同导致不同,不能真实的反应正负样本的精确率和召回率。更极端的情况,P为99,TP=90,FN=9,TN=1,FP=0,那么对于正样本来说,不论recall(90%)还是准确率(98%)都是很高的,而对于负样本来说,precision = 10%,recall = 100%,这显然是不符合实际情况的,是有失偏颇的。...
2020-05-11 14:59:44
1300
1
原创 python 绘制频数与正太分布图
描述性统计df.describe()中位数norm['monthly_lifespan'].median()众数counts = np.bincount(norm['monthly_lifespan']) #返回众数 np.argmax(counts) 绘制def normfun(x, mu, sigma): pdf = np.exp(-((x - mu) ...
2020-04-15 19:50:44
2466
原创 python-Object数据处理
数据来源https://towardsdatascience.com/encoding-categorical-features-21a2651a065chttps://github.com/liuy14/Kidney_Disease_DetectionLabelEncoderLabelEncoder可以自己处理缺失值missing_values_table(X)from sklea...
2020-04-15 14:51:38
2962
原创 集成模型辨析
bagging与RFbagging是sample具有随机性,RF是features+sample都具有随机性;RF是bagging的一种,是将决策树进行bagging的一种集成模型。
2020-04-13 19:21:40
137
原创 python建模全步骤
文章目录引入包名Object变量热编码Object变量label_encoder辨析缺失值处理合并数据建模可视化展示特征重要性均衡样本模型评价引入包名import matplotlib.pyplot as pltimport numpy as npimport os.pathfrom sklearn.preprocessing import Imputerimport csvimp...
2020-04-13 16:21:26
6907
原创 Python合并PDF
from PyPDF2 import PdfFileReader, PdfFileWriterdef merge_pdfs(paths, output): pdf_writer = PdfFileWriter() for path in paths: pdf_reader = PdfFileReader(path) for page in ra...
2020-04-09 10:28:00
228
原创 MIUI上下载全机型的全年数据+melt列转行+批量改列名+写入Excel
读取新增,drop除月末的其他数据data = pd.read_csv('/Users/bella/Downloads/miui-new-user_2019-01-01_2019-12-31 (1).csv',sep=',')data['红米Note5A_Sum(月新增)'] = data['红米Note5A_Sum(月新增)'].apply(lambda x:x.replace('-','0...
2020-03-31 19:43:27
233
原创 python将\N转为可计算的数值类型
背景现在Hive工场下载下来的数据,nan值会显示为’\N’,并不能用dropna()将其drop掉。python处理new_data = data[['brand','modelname','firstactivetime','new_active_counts']].dropna() # 没用,drop不掉,因为\N被解读为str,不是nan值new_data['new_active...
2020-03-23 11:39:25
652
3
原创 word数字批量转为会计计数
背景因为报告是由python自动输出的,因此数字都是normal显示形式,对于用户阅读不甚友好,因此需要将word中的数字批量转为会计计数。操作打开word的VBAoption(alt)+ F8将代码复制到程序框Sub qianfen()'本代码旨在解决WORD中数据转化为千分位'数据限定要求:-922,337,203,685,477.5808 到 922,337,203,685,...
2020-03-17 15:41:00
3277
原创 python与SQL的随机抽样
SQLdistribute by rand() sort by rand() limit 100000;Pythondf = df.sample(n=100000)
2020-03-16 11:46:46
269
原创 SQL-环比同比
https://blog.youkuaiyun.com/Eric_data/article/details/101287510?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task
2020-03-08 18:01:18
575
原创 涨薪必备!开窗函数了解一下
创建数据创建数据基于navicat,mysql 8.0.12#建立商品表create table goodsTable( id varchar(20) not null, name...
2020-02-28 23:55:16
246
原创 数据分析面试真题 - 开窗函数
文章目录写入数据题目正确????错误????正确????写入数据题目普通的group by开窗函数 - count()错误❌1错误❌2错误❌3正确写入数据create table staffTable( department varchar(20) not null, name varchar(20),salary bigint)ENGINE=InnoDB DEFAULT CHARSET=utf8;...
2020-02-26 21:49:29
1318
原创 窗口函数&开窗函数
文章目录创建数据语法rank排序例1例2rank,dense_rank与row_number例3创建数据#建立商品create table goodsTable( id varchar(20) not null, name varchar(20),type varchar(20),price int)ENGINE=InnoDB DEFAULT CHARSET=utf8;# 插入...
2020-02-26 15:50:36
2454
原创 AB测试/假设检验
文章目录基础概念:假设检验中的P值假设检验中的α-显著性水平假设检验中的1-α :置信度/置信水平P值与α的关系双边/单边检验两类错误例题例1:给出两个样本总体的均值,方差和样本个数例2:给出两个样本总体的概率均值和样本个数明确假设:way1: 计算H0的假设前提下的概率:P值way2: 计算H0的假设前提下的Z值Tips给出两个样本总体的均值和样本个数基础概念:假设检验中的P值假设检验是推...
2020-02-24 13:05:38
5546
1
原创 Navicat SQL - 找出互赞的用户
文章目录题目优化错误答案Tips1Tips2题目id1是用户id,id2是被点赞用户id#建立活跃表create table LikeTable( id1 varchar(20) not null, id2 varchar(20))ENGINE=InnoDB DEFAULT CHARSET=utf8;#插入活跃数据INSERT INTO LikeTable (id1, id2...
2020-02-21 15:49:09
624
原创 相关系数-回归分析-数据分析面试必备
文章目录R方结论线性回归与最小二乘法R方 - 相关系数p(y,y_head)定义相关系数p(x,y)推广 - 二次方程的相关系数Adjustice R方使用调整R方的原因R方结论R方就是拟合回归最后对拟合回归效果的一个评价指标。R方 越接近于1,则拟合回归效果越好。线性回归与最小二乘法R方 - 相关系数p(y,y_head)定义R方是衡量模型拟合度的一个量,是一个比例形式,被解...
2020-02-17 23:21:49
5116
原创 贝叶斯在数据分析中的应用
文章目录应用题目解题Tips应用根据现有数据,已知发生转化的用户中,有30%是使用IOS系统的女性用户;那么,当一个使用IOS系统的女性用户看到我的广告时,转化率为多少?题目现已知转化用户中,性别、年龄、操作系统的分布情况,求35-39岁的使用IOS操作系统的男性有多大的可能性发生转化?解题Tips贝叶斯与全概率公式:https://blog.youkuaiyun.com/hellozh...
2020-02-16 16:59:47
1417
1
原创 Python/excel:正态分布直方图
pythondata = data.set_index('lifespan')data.plot(kind='bar')plt.show()正太分布统计知识均值方差左偏右偏正态分布(normal distribution) 偏态分布(skewed distribution)左偏态:left skewed distribution,负偏态(negatively skewed ...
2020-02-13 11:55:24
1572
原创 Hive SQL变量设置
set test = NULL;-- Attention: 外边加了字符串索引select count('${hiveconf:test}') ;_c01set test = NULL;select count(${hiveconf:test}) ;Failset hivevar:test= 793;select count(${test}) ;1set hivevar...
2020-02-11 18:18:30
11053
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人