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

一个真实数据集的完整机器学习解决方案(上)

01 数据预处理 在实际的数据集中,包含互联网数据、金融数据等,往往都会存在缺失值和异常值,我们进行机器学习的建模,第一步就需要对数据进行清洗,并在清洗的过程中处理这些缺失、异常。...在处理完非数据类型的列后,我们在进行机器学习模型训练前,必须对缺失数据进行处理。...02 探索性数据特征统计 探索性数据统计分析(简称EDA)是对我们预处理完的数据进行探索性分析的阶段,通过EDA,我们可以初步知道数据的一些统计特征,以帮助我们更加合理的选择和使用数据构建特征。...分组特征 我们可以先用其中的某一个变量对所有的建筑物进行一次分类,再在每个分类中计算该分类的能源之星得分的数据分布。我们可以按类别对密度图进行着色,以查看变量对分布影响。...特征选择更多的是对特征做减法,只留下那些相对重要的特征,在删除的过程中,需要特别注意避免重要特征被删除的情况。

1.4K10

异常值检测

——进行聚类或者排序——找出异常值/点 我做面板数据一般都是缩尾异常值(winsorize),相当于人为censored保留其部分信息,使后续分析结论更稳健 异常值有很大的价值,需要提取出来进行专门分析...概括三种异常值检测方法 方法1:对总体进行统计建模来检测异常值 k个标准差以外的; 用指数加权移动回归; 类似CUSUM的一些方法,可以最快速的检测到一些变化。...简单来说三点: 1)对每一个 像素 的一系列 光谱值 进行主成分分析,提取前5个主成分。 2)在转换过的5D空间里(对应5个主成分),进行K均值聚类。k=50,距离采用马氏距离。...3)根据每个点到类(一般是我们感兴趣的那个类)的距离,对每个点进行异常程度打分,将结果可视化。 这个例子中,使用的工具是Hadoop和Accumulo,算法是聚类、PCA。...3)对每个POS机的支付行为,比较其与基准模型的差异,并对异常程度进行打分,可视化结果。

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

    干货 | 120 道机器学习面试题!备战春招

    答:拟合良好,是由该回归/总方差解释的那部分方差;你添加的预测变量越多,R^2越大;因而使用因自由度调整的R ^ 2;或着训练误差指标。 3.什么是维度灾难?...数据的改变:1.对数据进行winsorize处理2.转换数据(如进行对数处理)3.只有在你确定它们是不值得预测的异常值时才删除它们 4.与最小化误差绝对值的模型相比,在最小化误差平方的模型中,你认为有哪些差异...MSE对异常值更加严格。在这个意义上MAE鲁棒性更好,但也更难以拟合模型,因为它无法在数值上进行优化。因此,当模型的可变性较小且在计算上容易拟合时,我们应该使用MAE,否则应该使用MSE。...logloss/deviance:优点:基于概率的误差度量,缺点:对假阳性,假阴性非常敏感。当有超过2组时,我们可以使用k个二分类并将它们添加到logloss中。...将值代入同一随机变量的累计分布函数 6.一对夫妻告诉你他们有两个小孩,其中至少有一个是女孩。请问他们拥有两个女儿的概率是多少? 1/3 产品指标 ?

    58320

    备战春招 | 120 道机器学习面试题!

    答:拟合良好,是由该回归/总方差解释的那部分方差;你添加的预测变量越多,R^2越大;因而使用因自由度调整的R ^ 2;或着训练误差指标。 3.什么是维度灾难?...数据的改变:1.对数据进行winsorize处理2.转换数据(如进行对数处理)3.只有在你确定它们是不值得预测的异常值时才删除它们 4.与最小化误差绝对值的模型相比,在最小化误差平方的模型中,你认为有哪些差异...MSE对异常值更加严格。在这个意义上MAE鲁棒性更好,但也更难以拟合模型,因为它无法在数值上进行优化。因此,当模型的可变性较小且在计算上容易拟合时,我们应该使用MAE,否则应该使用MSE。...logloss/deviance:优点:基于概率的误差度量,缺点:对假阳性,假阴性非常敏感。当有超过2组时,我们可以使用k个二分类并将它们添加到logloss中。...将值代入同一随机变量的累计分布函数 6.一对夫妻告诉你他们有两个小孩,其中至少有一个是女孩。请问他们拥有两个女儿的概率是多少? 1/3 产品指标 ?

    41210

    备战春招 | 120 道机器学习面试题!

    答:拟合良好,是由该回归/总方差解释的那部分方差;你添加的预测变量越多,R^2越大;因而使用因自由度调整的R ^ 2;或着训练误差指标。 3.什么是维度灾难?...数据的改变:1.对数据进行winsorize处理2.转换数据(如进行对数处理)3.只有在你确定它们是不值得预测的异常值时才删除它们 4.与最小化误差绝对值的模型相比,在最小化误差平方的模型中,你认为有哪些差异...MSE对异常值更加严格。在这个意义上MAE鲁棒性更好,但也更难以拟合模型,因为它无法在数值上进行优化。因此,当模型的可变性较小且在计算上容易拟合时,我们应该使用MAE,否则应该使用MSE。...logloss/deviance:优点:基于概率的误差度量,缺点:对假阳性,假阴性非常敏感。当有超过2组时,我们可以使用k个二分类并将它们添加到logloss中。...将值代入同一随机变量的累计分布函数 6.一对夫妻告诉你他们有两个小孩,其中至少有一个是女孩。请问他们拥有两个女儿的概率是多少?

    1.3K30

    搞定这120个真实面试问题,杀进数据科学圈

    答:拟合良好,是由该回归/总方差解释的那部分方差;你添加的预测变量越多,R^2越大;因而使用因自由度调整的R ^ 2;或着训练误差指标。 3.什么是维度灾难?...数据的改变:1.对数据进行winsorize处理2.转换数据(如进行对数处理)3.只有在你确定它们是不值得预测的异常值时才删除它们 4.与最小化误差绝对值的模型相比,在最小化误差平方的模型中,你认为有哪些差异...MSE对异常值更加严格。在这个意义上MAE鲁棒性更好,但也更难以拟合模型,因为它无法在数值上进行优化。因此,当模型的可变性较小且在计算上容易拟合时,我们应该使用MAE,否则应该使用MSE。...logloss/deviance:优点:基于概率的误差度量,缺点:对假阳性,假阴性非常敏感。当有超过2组时,我们可以使用k个二分类并将它们添加到logloss中。...将值代入同一随机变量的累计分布函数 6.一对夫妻告诉你他们有两个小孩,其中至少有一个是女孩。请问他们拥有两个女儿的概率是多少? 1/3 产品指标 ?

    64420

    从零开始学量化(一):量化如何入门

    清洗数据的能力 事实上,在我实习过程中,绝大部分时间是在清洗数据,处理数据,把数据整理成各种各样的格式,而建各种高大上模型的时间很少,所以这部分能力是非常重要的。...- 异常值处理:异常值处理相对简单,一般是winsorize截尾的方法,python中可以用np.percentile完成。...,可以从以下几个角度进行学习。...- 优化:线性规划、非线性规划,可以通过scipy中的optimize函数实现。 - 多元统计模型:主要是聚类分析(kmeans,层次聚类)、判别分析、PCA、因子分析这些用的比较多。...- 证券投资学:证券投资学中给了很多常用的量价指标,当然这些也可以在别的地方去看,python的talib模块中基本都能实现,不用自己动手写。

    14.1K97

    Python数据分析作业一:NumPy库的使用

    np.sum(r1中的np.sum()函数对上述条件判断的结果进行求和,由于布尔类型的True在计算时会被转换成 1,False会被转换成 0,因此最终的求和结果就是小于 60...输出结果: [[1 1 2] [1 2 1] [1 1 1] [1 1 1]] 11、对r1数组的每一列按降序排序,排序结果放在数组r2中并输出 r2 = np.sort(r1,axis=0)[:...:-1,:] r2 np.sort(r1, axis=0)使用 NumPy 的sort()函数对二维数组r1按列进行排序,其中axis=0表示沿着列的方向进行排序,即每一列都会单独排序。...=True)计算了数组r1每行的平均值,并且保持维度一致,即使是在一维数组中也会以列向量形式输出。...rows = pos // r5.shape[1]:根据位置索引计算每个元素在原矩阵中的行坐标。 cols = pos % r5.shape[1]:根据位置索引计算每个元素在原矩阵中的列坐标。

    2600

    「R」apply,lapply,sapply用法探索

    但是,由于在R语言中apply函数与其他语言循环体的处理思路是完全不一样的,所以apply函数族一直是使用者玩不转一类核心函数。...apply函数可以对矩阵、数据框、数组(二维、多维),按行或列进行循环计算,对子元素进行迭代,并把子元素以参数传递的形式给自定义的FUN函数中,并以返回计算结果。...参数列表: X:数组、矩阵、数据框 MARGIN: 按行计算或按按列计算,1表示按行,2表示按列 FUN: 自定义的调用函数 …: 更多参数,可选 比如,对一个矩阵的每一行求和,下面就要用到apply做循环了...,还可以用data.frame数据集按列进行循环,但如果传入的数据集是一个向量或矩阵对象,那么直接使用lapply就不能达到想要的效果了。...,而不是按行或按列进行分组计算。

    4.6K32

    R语言入门之数据排序、合并、分类汇总

    数据排序 在R中对数据框中的数据排序,我们通常使用order()函数,该函数默认是升序,但是在要排序的变量前加上减号(-)就相当于降序排列了。...数据合并 2.1 添加列 将数据水平合并时我们通常使用merge()函数,合并时你可以指定一个或者多个关键字段(变量)。...,dataframeB,by=c("ID","Country")) 2.2 添加行 将数据垂直合并时,我们常常使用rbind()函数,使用该函数时要求两数据框的列数相同,并且变量的顺序已经匹配好了。...数据分类汇总 在R中对数据进行分类汇总是一件比较容易的事情: # 对mtcars数据集的变量cyl和vs进行分类汇总并计算各组数值型变量的均值 attach(mtcars) # 固定数据集 aggdata...这里aggregate()函数的FUN=参数是用来指定对各组变量进行的操作,是一个函数(R内置函数或自定义函数),na.rm=是用来指定是否移除缺失值的参数。

    2.4K30

    R语言中的apply函数族

    前言 apply函数族是R语言中数据处理的一组核心函数,通过使用apply函数,我们可以实现对数据的循环、分组、过滤、类型控制等操作。...apply函数可以对矩阵、数据框、数组(二维、多维),按行或列进行循环计算,对子元素进行迭代,并把子元素以参数传递的形式给自定义的FUN函数中,并返回计算结果。...MARGIN:表示对行(1)或者是对列(2)应用函数。 FUN: 可是R自带函数,如mean,sum等。也可以是自己编写的函数。 ... :FUN中的额外参数。...,此外,它还可以对data.frame数据集按列进行循环,但如果传入的数据集是一个向量或矩阵对象,那么直接使用lapply就不能达到想要的效果了,lapply会分别循环矩阵中的每个值,而不是按行或按列进行分组计算...eapply函数平时很难被用到,但对于R包开发来说,环境空间的使用是必须要掌握的。特别是当R要做为工业化的工具时,对变量的精确控制和管理是非常必要的。

    4.5K52

    社交网络分析的 R 基础:(三)向量、矩阵与列表

    这些数据结构在社交网络分析中极其重要,本质上对图的分析,就是对邻接矩阵的分析,而矩阵又是由若干个向量构成,因此需要熟练掌握这些特殊的数据结构。...在 R 语言中使用 matrix() 函数来创建矩阵。...矩阵还可以通过组合向量的方式创建,使用 rbind() 函数按行组合向量,使用 cbind() 函数按列组合向量: > v1 <- c(1:3) > v2 <- c(4:6) > v3 中的字典,但 R 语言中的列表中的元素是有序的。在 R 语言中使用 list() 函数来创建列表。...试着对任意一个非空列表使用 unlist() 函数,看看会发生什么。 参考 An Introduction to R R 数据类型 | 菜鸟教程 R 矩阵 | 菜鸟教程 R 列表 | 菜鸟教程

    2.8K20

    【科学计算包NumPy】NumPy数组的基本操作

    ufunc 函数全称为通用函数,是一种能够对数组中的所有元素进行操作的函数,对数组实施向量化操作(逐元素进行相同的操作)。...对一个数组进行重复运算时,使用 ufunc 函数比使用 math 库中的函数效率要高很多,方便程序书写(替代了循环)。...数组间的四则运算表示对每个数组中的元素分别进行四则运算,所以形状必须相同。 (2)比较运算: 、 == 、 >= 、 函数在针对二维数组的时候需要注意轴的概念。axis=0 时表示沿着纵轴进行计算,axis=1 时沿横轴进行计算。...使用 argsort 和 lexsort 函数,可以在给定一个或多个键时,得到一个由整数构成的索引数组,索引值表示数据在新的序列中的位置。

    12210

    R语言第二章数据处理④数据框排序和重命名目录

    目录 R语言第二章数据处理①选择列 R语言第二章数据处理②选择行 R语言第二章数据处理③删除重复数据 R语言第二章数据处理④数据框排序和重命名 =============================...=================== 这一篇主要介绍如何通过一个或多个列(即变量)的值对数据中的行进行重新排序。...您将学习如何轻松地: 使用R函数arrange()[dplyr包]按升序(从低到高)进行排序 使用arrange()结合函数desc()[dplyr package]以降序(从高到低)对行进行排序 library...dplyr函数arrange()可用于通过一个或多个变量对行重新排序(或排序)。...( sepal_length = Sepal.Length, sepal_width = Sepal.Width ) 使用Rbase函数重命名列 要将列Sepal.Length

    1.5K50

    学习R包

    R的内置数据,test 进行操作,也可以对双表格进行操作。...dplyr包有很多函数,为了防止dplyr包中的函数名与其他函数产生冲突,使用时前面加上“包名::”dplyr五个基础函数mutate(),新增列select(),按列筛选按列号筛选注意筛选内容与表格内容的统一...,包括大小写按列名筛选filter()筛选行arrange(),按某1列或某几列对整个表格进行排序arrange(test, Sepal.Length)#默认从小到大排序arrange(test, desc...(Sepal.Length))#用desc从大到小summarise():汇总,对数据进行汇总操作,结合group_by使用实用性强summarise(test, mean(Sepal.Length),...,而bind_cols()函数则需要两个数据框有相同的行数函数和R包的学习方式快速查看函数帮助文档?

    12310

    生信星球 学习小组Day6笔记--学习R包 高小能

    认识 R 包R包是多个函数的集合,具有详细的说明和示例。学生信,R语言必学的原因是丰富的图表和Biocductor上面的各种生信分析R包。 包的使用是一通百通的,我们以dplyr为例,讲一下R包。...安装和加载R包1.镜像设置为了保证我们可以自定义CRAN和Bioconductor的下载镜像,其实是可以在Rstudio中进行设置的,只需要运行这两行代码即可:# options函数就是设置R运行过程中的一些选项设置...图片加载library(dplyr)示例数据直接使用内置数据集iris的简化版:test 函数1.mutate(),新增列mutate...(test, new = Sepal.Length * Sepal.Width)图片2.select(),按列筛选(1)按列号筛选图片(2)按列名筛选图片3.filter()筛选行图片4.arrange...(),按某1列或某几列对整个表格进行排序图片5.summarise():汇总图片dplyr两个实用技能管道操作 %>% (cmd/ctr + shift + M)count统计某列的unique值dplyr

    16700

    全网最全数据分析师干货-python篇

    9.参数按值传递和引用传递是怎样实现的? Python中的一切都是类,所有的变量都是一个对象的引用。引用的值是由函数确定的,因此无法被改变。但是如果一个对象是可以被修改的,你可以改动对象。...匿名函数lambda没有语句的原因,是它被用于在代码被执行的时候构建新的函数对象并且返回。 15.Python中的pass是什么? Pass是一个在Python中不会被执行的语句。...高相关滤波 (High Correlation Filter)高相关滤波认为当两列数据变化趋势相似时,它们包含的信息也显示。这样,使用相似列中的一列就可以满足机器学习模型。...同样要注意的是:相关系数对范围敏感,所以在计算之前也需要对数据进行归一化处理。...②每个插补数据集合都用针对完整数据集的统计方法进行统计分析。③对来自各个插补数据集的结果,根据评分函数进行选择,产生最终的插补值。

    1.7K53

    学习order函数的记录

    下面是学习order函数的记录 (生信技能树学员luka) 写下这篇笔记的初衷是有小伙伴在群里提出问题,我在寻找答案过程中参与了学习群内的互动,借此机会写下个人浅薄的理解,希望帮助您更好理解order...因此我整合了order( )函数从基础到上述问题解决的学习过程,仅供参考! 一、order( )函数的介绍 排序在R语言处理数据的重要过程,有多种内置的基本函数进行排序。...3 > y <- c(9,9:1);y [1] 9 9 8 7 6 5 4 3 2 1 # order()对各向量进行排序,返回排序后的原始次序 > order(x) #当遇到相等值时,按原始顺序排列...()对2个向量进行排序 > order(x,y) [1] 6 5 1 2 7 4 10 8 3 9 似乎突然不知所云,我们将x,y组成数据框,尝试解读一下 > xy 函数运算规律,放在order( )中(也许其他函数也类似)就可以形成运算,并不需要特意指定也无法指定。当然,这并不妨碍我们使用函数。

    1K10
    领券