首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python 离群点检测算法 -- KNN

PyOD 中的 KNN 方法使用三种距离度量之一作为离群点得分:最大值(默认值)、平均值和中值。最大值使用到 k 个邻居的最大距离作为离群点得分,而平均值和中值分别使用平均值和中值作为离群值。...decision_scores_:训练数据的分数向量,在训练数据上使用.decision_functions()时也是如此。 Decisoin_score():为每个观测值分配离群值分数的评分函数。...邻居数为 5.0。污染率设置为 5%。...将阈值设置为 1.0 或甚至 2.0 可能更合理。这样,可以对正常组和离群组进行分析。25 个数据点被确定为离群值。离群组的特征均值均小于正常组,与下表的结果一致。...KNN 将离群值定义为与第 k 个近邻的距离。

65310
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    整理20个Pandas统计函数

    ,exclude=None) percentiles:可选折的百分数,列表形式;数值在0-1之间,默认是[.25,.5,.75] include/exclude:包含和排除的数据类型信息 返回的信息包含...: sex字段的相关信息也被显示出来 显示的信息更丰富,多了unique、top、freq等等 非空值数量count 返回的是每个字段中非空值的数量 In [5]: df.count() Out[5...、50%、75%的中位数: In [12]: plt.figure(figsize=(12,6))#设置画布的尺寸 plt.boxplot([df["age"],df["chinese"],df["english...Out[14]: 97.5 中值/中位数median 比如:1,2,3,4,5 的中位数就是3 再比如:1,2,3,4,5,6 的中位数就是 3+4 = 3.5 In [15]: df.median...中的方差叫样本方差 标准差(或方差)分为 总体标准差(方差)和 样本标准差(方差) 前者分母为n,右偏的;后者分母为n-1,是无偏的 pandas里是算无偏的;numpy里是有偏的 In [23]: df.var

    1.1K10

    Pandas的apply, map, transform介绍和性能测试

    我们一个学生分数为例 df_english = pd.DataFrame( { "student": ["John", "James",...arg可以是一个函数——就像apply可以取的一样——也可以是一个字典或一个Series。 na_action是指定序列的NaN值如何处理。当设置为"ignore "时,arg将不会应用于NaN值。...例如,假设我们想知道每门课所有学生的分数之和。...80 math 285 Name: score, dtype: int64 """ 但我们按学科汇总了分数,丢失了学生个体与其分数之间的关联信息。...我们还可以构建自定义聚合器,并对每一列执行多个特定的聚合,例如计算一列的平均值和另一列的中值。 性能对比 就性能而言,agg比apply稍微快一些,至少对于简单的聚合是这样。

    2K30

    精心整理 | 非常全面的Pandas入门教程

    如何获得数值series的四分位值 # 设置随机数种子 state = np.random.RandomState(100) # 从均值为5标准差为25的正态分布随机抽取5个点构成series ser...如何计算数值series的自相关系数 ser = pd.Series(np.arange(20) + np.random.normal(1, 10, 20)) # 求series的自相关系数,i为偏移量...如何将dataframe中的所有值以百分数的格式表示 df = pd.DataFrame(np.random.random(4), columns=['random']) # 格式化为小数点后两位的百分数...如何得到列之间最大的相关系数 df = pd.DataFrame(np.random.randint(1,100, 16).reshape(4, -1), columns=list('pqrs'), index...如何计算每一行与下一行的相关性 df = pd.DataFrame(np.random.randint(1,100, 25).reshape(5, -1)) # 行与行之间的相关性 [df.iloc[

    10K53

    协同过滤算法概述与python 实现协同过滤算法基于内容(usr-item,item-item)

    协同过滤的模型一般为m个物品,m个用户的数据,只有部分用户和部分数据之间是有评分数据的,其它部分评分是空白,此时我们要用已有的部分稀疏数据来预测那些空白的物品和数据之间的评分关系,找到最高评分的物品推荐给用户...比如你在网上买了一本机器学习相关的书,网站马上会推荐一堆机器学习,大数据相关的书给你,这里就明显用到了基于项目的协同过滤思想。...'] df = pd.read_csv(u_data_path+'ml-100k/u.data', sep='\t', names=header) print(df.head(5)) print(len...n_users = df.user_id.unique().shape[0] #unique()为去重.shape[0]行个数 n_items = df.item_id.unique().shape[...'] df = pd.read_csv(u_data_path+'ml-100k/u.data', sep='\t', names=header) print(df.head(5)) print(len

    7.5K52

    提高回归模型精度的技巧总结

    我们将处理这些缺失的数据,然后开始数据分析。Sklearn的SimpleImputer允许您根据各自列中的平均值/中值/最频繁值替换缺失的值。在本例中,我使用中值来填充空值。...一个简单的海产配对可以给我们很多启示! sns.pairplot(data=df, diag_kind='kde') ? 我们看到了什么? 收费和儿童被扭曲了。 年龄与收费呈正相关。...我们看到年龄和体重指数与收费有平均相关性。 现在,我们将逐一介绍模型准备和模型开发的步骤。...——用于将基于排名的分类数据值表示为数字。...平均绝对误差(MAE)和均方根误差(RMSE)是用来评价回归模型的指标。你可以在这里阅读更多。我们的基线模型给出了超过76%的分数。

    1.9K20

    Plotly+Pandas+Sklearn:打响kaggle第一枪

    今天决定开始分享一篇关于聚类的案例,使用的是:超市用户细分数据集,官网地址请移步:超市 [008i3skNgy1gwruvkm907j30sg0myjsl.jpg] <!...: object 字段类型中,除了性别Gender是字符串,其他都是int64的数值型 4、描述统计信息 描述统计信息主要是查看数值型的数据的相关统计参数的值,比如:个数、中值、方差、最值、四分位数等...Income (k$)', 'Spending Score (1-100)'] # 这3个属性的相关性分析 plt.figure(1,figsize=(15,6)) n = 0 for x in...> 1 else y) plt.show() 具体图形为: [008i3skNgy1gwrt4xwftgj30ru0d8tb6.jpg] 上图表明两点: 主对角线是自身和自身的关系,成正比例...其他图形是属性间的,有数据的散点分布,同时还有模拟的相关趋势图 两个属性间的聚类 在这里不具体讲解聚类算法的原理和过程,默认有基础 K值选取 我们通过绘制数据的ELBOW图来确定k值。

    45421

    SQL函数

    获取分数表的总分数 SELECT SUM(score) AS 总分数 FROM score_db; 8.GROUP BY 语句 GROUP BY 语句用于结合聚合函数,根据一个或多个列对结果集进行分组。...要提取字符的字段。 start 必需。规定开始位置(起始值是 1)。 length 可选。要返回的字符数。如果省略,则 MID() 函数返回剩余文本。...提取学生的姓 SELECT MID(name,1,1) AS 姓 FROM student_db; 14.LEN() 函数 LEN() 函数返回文本字段中值的长度。...获取城市名字的字符长度 SELECT name, LENGTH(city) as 城市名字长度 FROM student_db; 15.ROUND() 函数 ROUND() 函数用于把数值字段舍入为指定的小数位数...select ROUND(3.1415); ROUND(X,D):返回参数X的四舍五入的有 D 位小数的一个数字。如果D为0,结果将没有小数点或小数部分。

    92420

    归一化vs标准化,哪个更好

    值的范围可以是[-1,1]或[0,1]。例如,假设我们有一个数据集,其中包含两个名为“年龄”和“体重”的特征,如下所示: ? 假设一个名为“年龄”的要素的实际范围是5到100。...我们可以通过从“年龄”列的每个值中减去5,然后将结果除以95( 100-5)。为了使您清晰可见,我们可以将以上内容写为公式。 ?...其中min ^(j)和max ^(j)是数据集中特征j的最小值和最大值。图像来源于Andriy Burkov的《百页机器学习书》 实例 现在您已经了解了背后的理论,现在让我们看看如何将其投入实际。...如上所示,两个数组的值都在[0,1]范围内。 我们何时应实际对数据进行归一化? 尽管归一化不是强制性的(必须做的事)。它可以通过两种方式为您提供帮助 归一化数据将提高学习速度。...通常,最好使用Z分数标准化,因为最小-最大缩放容易过度拟合。 什么时候使用标准化? 上述问题没有答案。如果您的数据集较小且有足够的时间,则可以尝试上述两种技术并选择最佳的一种。

    1.8K20

    我们爬了上千个数据分析师信息, 你真的懂数据分析师嘛?

    今天就对拉勾网上的数据分析职位的相关信息来一个探索性分析。...']: # 如果技能在数据框的技能列中 if i[0] in hot_skill_salary_mean: # 如果技能在技能中值的均值的字典中 # 技能键的值为原值加上新值...[i[0]] / i[1] # 技能中值的均值为之前计算的和除以技能频数 hot_skill_salary_mean = sorted(hot_skill_salary_mean.items(), key...工作经验与薪资密切相关,1-3年经验的薪资中值大部分超过了1万,3-5年的都在1万5以上,而5年以上的,薪资中值都在2万以上。...,图像的灰底不是颜色,是style,可以用两种方式设置,但两种都不好用,因为只要对一个图设置后,那做其它图时都会默认采用你设置的这个style,而我希望只针对单个图起作用。

    42830

    一文搞懂:什么是Stacking堆叠?手把手带你搭建堆叠模型,附有python源码和数据集。

    在机器学习中,常常需要使用多种回归或分类模型来解决不同的任务。然而,单个模型的表现往往受到其算法特性的限制,可能无法达到最佳性能。那么,如何将多个模型的优点结合起来,进一步提高预测效果呢?...元学习器通常是一个较简单的模型(如线性回归、逻辑回归等),它的任务是学习如何将这些基学习器的预测值有效地结合起来,生成最终的预测结果。...训练元学习器:在新的数据集上训练一个元学习器,这个元学习器会学习如何将基学习器的预测结果结合起来,从而得到最终的输出。...然后,训练一个简单的元学习器(例如逻辑回归),用这个元学习器来学习如何将三个模型的输出结合起来,从而做出最终的预测。...(n_estimators=100,random_state=1)), ('XGB', XGBClassifier(n_estimators=100,random_state=1)),

    17910

    一文介绍特征工程里的卡方分箱,附代码实现

    其基本思想是根据样本数据推断总体的分布与期望分布是否有显著性差异,或者推断两个分类变量是否相关或者独立。 一般可以设原假设为 :观察频数与期望频数没有差异,或者两个变量相互独立不相关。...实际应用中,我们先假设原假设成立,计算出卡方的值,卡方表示观察值与理论值间的偏离程度。 卡方值的计算公式为: ? 其中A为实际频数,E为期望频数。...threshold: 卡方阈值,如果未指定max_groups,默认使用置信度95%设置threshold。...return: 包括各组的起始值的列表. ''' freq_tab = pd.crosstab(df[col],df[target]) #转成numpy数组用于计算。...x: 需要转换到分组的值 cutoffs: 各组的起始值。 return: x对应的组,如group1。从group1开始。 ''' #切分点从小到大排序。

    4.2K20

    特征锦囊:一文介绍特征工程里的卡方分箱,附代码实现

    一般的情况下我们会把原假设设置为:观察频数与期望频数之间没有差异,也就是说两个分类变量之间是相互独立不相关的。...(比如,要找分位数位0.9,自由度为8的值,查表可知为3.489539 ?...然后就套入上面的公式:(A为实际频数,E为期望频数) 因为我们选择了其中一个方案,另外一个方案就明确了,所以自由度是1,因此可以查表,自由度为1的,而且卡方值为10.01的分位数是多少了~ 查表自由度为...return: 包括各组的起始值的列表. ''' freq_tab = pd.crosstab(df[col],df[target]) #转成numpy数组用于计算。...x: 需要转换到分组的值 cutoffs: 各组的起始值。 return: x对应的组,如group1。从group1开始。 ''' #切分点从小到大排序。

    2.8K20

    Pandas 对数值进行分箱操作的4种方法总结对比

    ({'score': np.random.randint(0,101,1000)})return df create_df()df.head() 数据包括 1000 名学生的 0 到 100 分的考试分数...在前面的示例中,我们为每个级别定义了分数间隔,这回使每个级别的学生数量不均匀。在下面的示例中,我们将尝试将学生分类为 3 个具有相等(大约)数量的分数等级。...如果 retbins 设置为 True 则会返回 bin 边界。...将 sort 设置为 False 以按其索引的升序对系列进行排序。 series 索引是指每个 bin 的区间范围,其中方括号 [ 和圆括号 ) 分别表示边界值是包含的和不包含的。...分数的最小值为 0,最大值为 100,因此这 3 个部分中的每一个都大约在 33.33 范围内。这也解释了为什么 bin 的边界是 33.33 的倍数。

    1.1K40

    利用python回顾统计学中的基础概念(全)

    描述性统计,就是从总体数据中提取变量的主要信息(总和、均值等),从而从总体层面上,对数据进行统计性描述。 在统计的过程中,通常会配合绘制相关的统计图来进行辅助。...* 类别变量 + 无序类别变量 + 有序类别变量 * 数值变量 + 连续变量 + 离散型变量 3)本文章使用的相关python库 import numpy as np import...频数:指一组数据中类别变量的每个不同取值出现的次数。 频率:指每个类别变量的频数与总次数的比值,通常采用百分数表示。...如果数据个数为偶数,则取中间两个数值的均值。 众数:一组数据中出现次数对多的值。 2)均值、中位数、众数三者的区别 ”数值变量”通常使用均值与中值表示集中趋势。...2)峰度 ① 概念 峰度是描述总体中所有取值分布形态陡缓程度的统计量,可以讲峰度理解为数据分布的高矮程度,峰度的比较是相对于标准正态分布的。 对于标准正态分布,峰度为0。

    1.1K11

    交子杯 - 2020 - AI赛道 - TOP1

    下面进入正题,介绍MTM在这个比赛的相关工作,该方案来自MTM里面的两只年轻滚滚biubiubiu以及lcy。...决赛数据分布差异则不太明显(猜测是按照样本id随机划分的,另外可进一步推测决赛AB榜也是按照样本id随机划分的),但是采样点数据分布差异很大,中值22,最大值60+,最小值只有2。...非常适合临场发挥稳定的选手参加。另外,决赛提供一块V100(16G),不允许使用额外的算力,不允许使用初赛数据训练和预训练。这非常考验初赛模型的鲁棒性与轻便性,以及参赛选手的临场发挥能力。...初赛模型以OTTO开源的baseline为基础,做了如下几个调整: 添加以下补充特征序列(可以看成一种预先的特征交互) def add_features(df): print(df.columns...使用了两个辅助分类场景与动作的loss(交叉熵损失),因此总共有3个loss,同时对于每一个loss内的label设置权重。

    65440
    领券