Python之所以能在数据科学与人工智能应用领域中占有重要位置,不仅是因为其免费开源易数据处理,更重要的是它还提供了丰富且功能强大的机器学习模型与算法程序包。Scikit-learn 是机器学习领域非常热门的一个开源包,它整合了众多机器学习算法,基于Python语言编写而成,可以免费使用。Scikit-learn基本功能主要分为六大部分:分类、回归、聚类、数据降维、模型选择和数据预处理。
在实际数据挖掘分析中,数据预处理是必不可少的环节,甚至会占用到整个任务的60%以上的时间。同时经过数据预处理,能保障数据的质量,从而减少模型的误差。数据挖掘分析中有一句至理名言:“垃圾进,垃圾出”,也就是说如果数据质量得不到保障,模型挖掘出来的结果也没有实际的使用价值。因此在数据挖掘分析任务中,需要特别注意数据的预处理。
在数据处理过程中缺失值是常见的,需要对其进行处理。前面已经介绍过利用pandas包中的fillna函数,可以对缺失值进行填充。但是这种填充方法通过指定值进行填充,没有充分利用数据集中的信息。为了克服这种填充方法的缺点,这里介绍Scikit-learn包中能充分利用数据信息的三种常用填充策略,即均值填充、中位数填充和最频繁值填充。这里填充方式有两种:按行和按列。所谓按行或者按列均值填充策略,就是对某行或者某列中的所有缺失值用该行或者该列中非缺失部分的值的平均值来表示;中位数填充策略和最频繁值填充策略类似,即取某行或某列中非缺失部分的值的中位数和出现频次最多的值来代替其缺失值。
使用Scikit-learn中的数据预处理模块进缺失值填充的基本步骤如下: 1.导入数据预处理中的填充模块Imputer,其命令如下: from sklearn.preprocessing import Imputer 2.利用Imputer创建填充对象imp,其命令如下: imp = Imputer(missing_values=‘NaN’, strategy=‘mean’, axis=0) #创建按列均值填充策略对象。 其中对象参数说明如下: strategy:均值(mean)、中位数(median)、最频繁值(most_frequent)三种填充策略 axis=0:按列填充方式 axis=1:按行填充方式 调用填充对象imp中的fit()拟合方法,对待填充数据进行拟合训练,其命令如下: imp.fit(Data) #Data为待填充数据集变量 调用填充对象imp中的transform()方法,返回填充后的数据集了,其命令如下: FData=imp.transform(Data) #返回填充后的数据集FData
from sklearn.preprocessing import Imputer
imp = Imputer(missing_values=‘NaN’, strategy=‘mean’, axis=0) #创建按列均值填充策略对象。
imp.fit(Data) #Data为待填充数据集变量
FData=imp.transform(Data) #返回填充后的数据集FData
感谢整理
好多机器学习的代码都不用自己写了。聚类下锚框,算向量余弦相似度确实挺方便的。而且AI Studio也集成了,不用再自己装。
我都不敢多发了
边想边写有为了赚积分的嫌疑
的确是 很多算法都不用自己手撸了
只要了解一个大概的原理 知道他能做啥 把输入输出把握准确就行
其实这几个库系列我准备的东西很多,但是写个一百多楼也没人看 没有意义
嗯,自己写还容易出bug
AI Studio有约稿吧?可以试试,最多给300分呢。
跟着了解一下这方面的知识
哈哈 写个这实在太累了 写个80积分的得用一天数据
当老师,就当课程准备了哈。只是说说。
人工智能选择python, numpy库才是第一原因,功不可没!
的确
numpy底层的c实现的实在是太好了
优化的非常好 numpy库的作者太大神了
pandas好像用得不太多。
在实际数据挖掘分析中,数据预处理是必不可少的环节,甚至会占用到整个任务的60%以上的时间。同时经过数据预处理,能保障数据的质量,从而减少模型的误差。数据挖掘分析中有一句至理名言:“垃圾进,垃圾出”,也就是说如果数据质量得不到保障,模型挖掘出来的结果也没有实际的使用价值。因此在数据挖掘分析任务中,需要特别注意数据的预处理。
在数据处理过程中缺失值是常见的,需要对其进行处理。前面已经介绍过利用pandas包中的fillna函数,可以对缺失值进行填充。但是这种填充方法通过指定值进行填充,没有充分利用数据集中的信息。为了克服这种填充方法的缺点,这里介绍Scikit-learn包中能充分利用数据信息的三种常用填充策略,即均值填充、中位数填充和最频繁值填充。这里填充方式有两种:按行和按列。所谓按行或者按列均值填充策略,就是对某行或者某列中的所有缺失值用该行或者该列中非缺失部分的值的平均值来表示;中位数填充策略和最频繁值填充策略类似,即取某行或某列中非缺失部分的值的中位数和出现频次最多的值来代替其缺失值。
使用Scikit-learn中的数据预处理模块进缺失值填充的基本步骤如下: 1.导入数据预处理中的填充模块Imputer,其命令如下:
from sklearn.preprocessing import Imputer
2.利用Imputer创建填充对象imp,其命令如下:imp = Imputer(missing_values=‘NaN’, strategy=‘mean’, axis=0) #创建按列均值填充策略对象。
其中对象参数说明如下: strategy:均值(mean)、中位数(median)、最频繁值(most_frequent)三种填充策略 axis=0:按列填充方式 axis=1:按行填充方式 调用填充对象imp中的fit()拟合方法,对待填充数据进行拟合训练,其命令如下:imp.fit(Data) #Data为待填充数据集变量
调用填充对象imp中的transform()方法,返回填充后的数据集了,其命令如下:FData=imp.transform(Data) #返回填充后的数据集FData
感谢整理
好多机器学习的代码都不用自己写了。聚类下锚框,算向量余弦相似度确实挺方便的。而且AI Studio也集成了,不用再自己装。
我都不敢多发了
边想边写有为了赚积分的嫌疑
的确是 很多算法都不用自己手撸了
只要了解一个大概的原理 知道他能做啥 把输入输出把握准确就行
其实这几个库系列我准备的东西很多,但是写个一百多楼也没人看 没有意义
嗯,自己写还容易出bug
AI Studio有约稿吧?可以试试,最多给300分呢。
跟着了解一下这方面的知识
哈哈 写个这实在太累了 写个80积分的得用一天数据
当老师,就当课程准备了哈。只是说说。
人工智能选择python, numpy库才是第一原因,功不可没!
的确
numpy底层的c实现的实在是太好了
优化的非常好 numpy库的作者太大神了
pandas好像用得不太多。