首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

pandas:数据离散离散数据的后期处理(one-hot)

大家好,我是黄同学 今天跟大家聊聊数据离散离散数据的后期处理。 1、什么是数据离散? 连续属性的离散,就是将连续属性的值域划分为若干个离散的区间。...2、为什么要进行数据离散?   数据离散可以有效的降低时间复杂度和内存开销。   对于某些机器学习算法来说,像决策树、随机森林、朴素贝叶斯。他们的数据集大多数都是针对的离散数据。...如果将收入转换为离散数据类型(低薪、中薪、高薪),就能够很清楚的看出原始数字的含义。   离散后的特征对异常数据有很强的鲁棒性:对于年龄这个特征,如果年龄>30是1,否则0。...更多数据离散的内容,可以参考如下文章:https://zhuanlan.zhihu.com/p/91181935 3、怎么进行数据离散?   ...4、离散数据的后期处理(one-hot编码)   不管是连续性数据变量,还是离散数据编码,都是数据的一个特征,都有它独特的含义。

2.8K00

『ACM-算法-离散』信息竞赛进阶指南--离散

数据离散是一个非常重要的思想。 为什么要离散? 当以权值为下标的时候,有时候值太大,存不下。 所以把要离散的每一个数组里面的数映射到另一个值小一点的数组里面去。...image.png 通俗的说,离散是在不改变数据相对大小的条件下,对数据进行相应的缩小。...例如: 原数据:12,9999,9000900,150;处理后:1,3,4,2; 原数据:{100,200},{20,50000},{1,400};处理后:{3,4},{2,6},{1,5}; 但是离散仅适用于只关注元素之间的大小关系而不关注元素本身的值...// 离散 void discrete() { sort(a + 1, a + n + 1); for (int i = 1; i <= n; i++) // 也可用STL中的unique函数...= a[i - 1]) b[++m] = a[i]; } // 离散后,查询x映射为哪个1~m之间的整数 void query(int x) { return lower_bound(b +

64820

LR 特征离散

在工业界,很少直接将连续值作为逻辑回归模型的特征输入,而是将连续特征离散化为一系列0、1特征交给逻辑回归模型,这样做的优势有以下几点: (1)离散特征的增加和减少都很容易,易于模型的快速迭代; (2)...稀疏向量内积乘法运算速度快,计算结果方便存储,容易扩展; (3)离散后的特征对异常数据有很强的鲁棒性:比如一个特征是年龄>30是1,否则0。...如果特征没有离散,一个异常数据“年龄300岁”会给模型造成很大的干扰; (4)逻辑回归属于广义线性模型,表达能力受限;单变量离散化为N个后,每个变量有单独的权重,相当于为模型引入了非线性,能够提升模型表达能力...,加大拟合; (5)离散后可以进行特征交叉,由M+N个变量变为M*N个变量,进一步引入非线性,提升表达能力; (6)特征离散后,模型会更稳定,比如如果对用户年龄离散,20-30作为一个区间,不会因为一个用户年龄长了一岁就变成一个完全不同的人...当然处于区间相邻处的样本会刚好相反,所以怎么划分区间是门学问; (7)特征离散以后,起到了简化了逻辑回归模型的作用,降低了模型过拟合的风险。

1.1K40

【python】数据挖掘分析清洗——离散方法汇总

@TOC前言离散数据清洗中,非常重要的一部分,后续的标准、异常值处理、模型等,都需要将一些文本数据进行离散。...这里我将离散化分为两大类别,数值型数据离散,字符数据离散一、字符数据离散将字符离散,是为了后续的数据清洗能够正常进行,因为带有字符的数据无法进行很多数据清洗操作,这里以数据的'报告类型','会计准则...方便解释和可视离散后的数据更容易解释和可视。例如,在营销分析中,将年龄分成若干个组可以更清楚地展示不同年龄段的人口分布和消费习惯。...总结连续变量离散:连续变量离散将连续的数据范围划分成若干个有序的、互不重叠的区间,然后将数据映射到对应的区间中。离散后的数据可以更好地揭示变量之间的关系,提高模型的预测准确性。...此外,连续变量离散还可以降低计算复杂度,方便处理缺失值和异常值,并且更容易解释和可视。字符离散:字符离散将字符型数据转化为离散数据

29030

离散思想详细讲解

1.什么是离散 数据离散是一个非常重要的思想。 为什么要离散?当以权值为下标的时候,有时候值太大,存不下。 所以把要离散的每一个数组里面的数映射到另一个值小一点的数组里面去。...我们来看一下定义:离散,把无限空间中有限的个体映射到有限的空间中去,以此提高算法的时空效率。(by百度百科) 通俗的说,离散是在不改变数据相对大小的条件下,对数据进行相应的缩小。...例如: 原数据:1,999,100000,15;处理后:1,3,4,2; 原数据:{100,200},{20,50000},{1,400}; 处理后:{3,4},{2,6},{1,5}; 但是离散仅适用于只关注元素之间的大小关系而不关注元素本身的值...假如你想写的更加专业就要采用以下步骤: 1、排序 2、去重 3、索引 首先我们要对所要进行离散数据进行排序:一般使用sort对数组或结构体排序。...cnt 离散后的数组大小 int lsh[MAXN] , cnt , num[MAXN] , n; for(int i=1; i<=n; i++) { scanf("%d",&num[i]);

77530

数据离散及其KMeans算法实现的理解

“ 这篇文章尝试借用数据离散这个事给大家讲明白K-Means算法的含义。” ? 01 — 数据离散 数据离散数据预处理的一个非常重要的步骤,就是将连续的数据分成几个段。...02 — 数据离散的意义 一些数据挖掘算法中(比如Apriori算法),要求数据是分类属性形式。...因此,就需要在数据预处理阶段将连续属性的数给它离散,除此之外离散还具有以下好处: 提高计算效率 分类模型计算需要 距离计算模型(k均值、协同过滤)中降低异常数据对模型的影响 图像处理中的二值化处理...03 — 常用的数据离散方法 离散的工作很容易理解,就是依照一定规律把写数据给分成少数的几类。那这个规律是什么呢?...04 — K-Means算法 聚类分析是在数据中发现数据对象之间的关系,将数据进行分组,组的相似性越大,组间的差别越大,则聚类效果越好。 为什么这么说呢?

1.2K30

C++ 离散算法

离散 离散离散数学中的概念。离散算法,指把无限空间中的离散数据映射到一个有限的存储空间中,并且对原数据进行有序索引。主打压缩的都是精。...离散流程: 对离散数列{235,897,458,7654,458,1234}为例。数列中的数据涉及到的数轴区间从0到7654。诺大的区间中唯有6个数据。相当于仰头看星空,繁星一点一点。...遇到这种情况,可以对数列离散操作。 对原数据排序。...(也称为离散)后,原数据分别被映射为{25,1}、{458,2}、{897,3}、{1234,4}、{7654,5} 原数据离散后常用操作是查找离散数据离散(索引)值是多少。...总结 本文聊聊离散算法,当数据趋于离散分布,而且,计算时只在意数据的相对值时,可以使用此算法。

7010

离散及模板详解

离散 基本思想 首先,离散是指数值域非常大,例如 1-10^6 ,但是个数相对较少,例如只有 10^3 个, 但在我们的程序中需要通过这些数值作为下标,且依赖的是这些数值之间的顺序关系(当然通常这些数是有序的...如果为了这 10^3 个数而开一个 10^6 的数组过于浪费空间,因此我们可以采用离散的方法,将这些数映射到 0-10^3 上,这个过程就叫做离散。...vector alls; // 存储所有待离散的值 sort(alls.begin(), alls.end()); // 将所有值排序 alls.erase(unique(alls.begin...(), alls.end()), alls.end()); // 去掉重复元素 2.如何算出x离散后的值 ==> 用二分法 int find(int x) // 找到第一个大于等于x的位置 {...7 8 输出样例: 8 0 5 题目分析 数据范围很大,因此不能用哈希表,并且数轴上的数字是离散的,整体是稀疏的,我们可以采用离散的方式进行映射。

47920

【简单】区间和(离散方法)

数据范围 \rm{1} \le n,m \le {10^5} 输入样例 3 3 1 2 3 6 7 5 1 3 4 6 7 8 输出样例 8 0 5 题解 (离散、前缀和) 对于数据量比较小的数组,可直接使用前缀和操作即可...,但如果数据量很大,如本题:- {10^9} \le x \le {10^9},如果依然使用前缀和就可能超出时间限制!...根据题意,虽然数据的范围很大({10^9}),但需要我们处理的坐标最多也就是\rm{3} \times {10^5},即 n + 2m (\rm{1} \le n,m \le {10^5}),所以将其离散可以节省很多不必要的操作...离散即是把无限空间中有限的个体映射到有限的空间中去,此题我们把需要处理的数组下标映射到一个新的容器 alls 中去,定义 find() 函数来返回离散容器 alls 中对应坐标的位置,最后,用之前的前缀和思想即可在较短时间实现题目要求...= 300010; int n, m; int a[N], s[N]; vector alls;//需要操作的坐标 vector add, query; //二分查找坐标x在离散坐标容器

56330

机器学习 | LR 特征离散

LR模型介绍:机器学习 | LR逻辑回归模型_公众号:算法攻城狮-CSDN博客 在工业界,很少直接将连续值作为逻辑回归模型的特征输入,而是将连续特征离散化为一系列0、1特征交给逻辑回归模型,这样做的优势有以下几点...: (1)离散特征的增加和减少都很容易,易于模型的快速迭代; (2)稀疏向量内积乘法运算速度快,计算结果方便存储,容易扩展; (3)离散后的特征对异常数据有很强的鲁棒性:比如一个特征是年龄>30是1,...如果特征没有离散,一个异常数据“年龄300岁”会给模型造成很大的干扰; (4)逻辑回归属于广义线性模型,表达能力受限;单变量离散化为N个后,每个变量有单独的权重,相当于为模型引入了非线性,能够提升模型表达能力...,加大拟合; (5)离散后可以进行特征交叉,由M+N个变量变为M*N个变量,进一步引入非线性,提升表达能力; (6)特征离散后,模型会更稳定,比如如果对用户年龄离散,20-30作为一个区间,不会因为一个用户年龄长了一岁就变成一个完全不同的人...当然处于区间相邻处的样本会刚好相反,所以怎么划分区间是门学问; (7)特征离散以后,起到了简化了逻辑回归模型的作用,降低了模型过拟合的风险。

46940

数据处理 | pandas入门专题——离散与one-hot

离散 离散对应的反面是连续,离散也就是将连续性的数值映射到一个离散的值。举个很简单的例子,比如说现在有一个特征是用户的收入,我们都知道贫富差距是非常巨大的,一个马云的收入顶的上成千上万人收入之和。...比较简单也比较常用的一种方法就是将它离散,将原本连续的值映射成离散的变量。比如说收入,我们不再直接用收入这个值来作为特征,而是将它分成几个桶,比如分为低收入群体,中等收入群体,高收入群体。...如果采用这种方式就体现不出来了,所以离散的设计也不是拍脑门的,也要根据实际情况具体分析。 那么假设我们希望在dataframe当中做这样离散的操作,应该怎么办呢?...离散的方法除了cut之外,还有一个叫做qcut,和cut不同之处在于qcut是根据分位数进行划分的。比如我们希望忽视具体的数值,按照数据的数量进行等分,就需要用到qcut了。 ?...总结 离散和one-hot都是非常常用的功能, 一般来说这两个功能通常会连在一起使用,先将某一个值进行离散,然后再将离散的结果进行one-hot,从而适应模型。

61911

R语言第二章数据处理⑧数据采样和离散

数据采样: setwd("E:\\Rwork") set.seed(1234) index <- sample(1:nrow(iris),10, replace = T) index sample_set...<- iris[index,] index <- sample(nrow(iris),0.75*nrow(iris)) sample_set <- iris[index,] 数值离散 data(iris...include.lowest = TRUE) newiris <- data.frame(contseplen = iris$Sepal.Length , discseplen = cutseplen) newiris 数据合并...最常用merge()函数,但是这个函数使用时候这两种情况需要注意: 1、merge(a,b),纯粹地把两个数据集合在一起,没有沟通a、b数据集的by,这样出现的数据很多,相当于a*b条数据; 2...、merge函数是匹配到a,b数据集的并,都有的才匹配出来,如果a、b数据集ID不同,要用all=T(下面有all用法的代码)。

72620
领券