Python----数据预处理代码实例
为方便收藏学习,转载自:https://www.jb51.net/article/158168.htm
本文实例为大家分享了Python数据预处理的具体代码,供大家参考,具体内容如下
1.导入标准库
|
1
2
3
|
import numpy as npimport matplotlib.pyplot as pltimport pandas as pd |
2.导入数据集
|
1
2
3
4
5
|
dataset = pd.read_csv('data (1).csv') # read_csv:读取csv文件#创建一个包含所有自变量的矩阵,及因变量的向量#iloc表示选取数据集的某行某列;逗号之前的表示行,之后的表示列;冒号表示选取全部,没有冒号,则表示选取第几列;values表示选取数据集里的数据。X = dataset.iloc[:, :-1].values # 选取数据,不选取最后一列。y = dataset.iloc[:, 3].values # 选取数据,选取每行的第3列数据dataset.z = dataset.iloc[:, 0:8] # 选取数据,选取每行的前7列。注意这里不包括第8列。
w = dataset.iloc[:, 8] #选取数据,选取我每行的第8列。和上一行进行相比,这是在取过前7行之后,只取第八列。
上述的意思可以这样考虑,选取数据进行训练,前7列是特征,第8列是标签。
|
3.缺失数据
|
1
2
3
4
5
|
from sklearn.preprocessing import Imputer #进行数据挖掘及数据分析的标准库,Imputer缺失数据的处理#Imputer中的参数:missing_values 缺失数据,定义怎样辨认确实数据,默认值:nan ;strategy 策略,补缺值方式 : mean-平均值 , median-中值 , most_frequent-出现次数最多的数 ; axis =0取列 =1取行 imputer = Imputer(missing_values = 'NaN', strategy = 'mean', axis = 0)imputer = imputer.fit(X[:, 1:3])#拟合fitX[:, 1:3] = imputer.transform(X[:, 1:3]) |
4.分类数据
|
1
2
3
4
5
6
7
8
|
from sklearn.preprocessing import LabelEncoder,OneHotEncoderlabelencoder_X=LabelEncoder()X[:,0]=labelencoder_X.fit_transform(X[:,0])onehotencoder=OneHotEncoder(categorical_features=[0])X=onehotencoder.fit_transform(X).toarray()#因为Purchased是因变量,Python里面的函数可以将其识别为分类数据,所以只需要LabelEncoder转换为分类数字labelencoder_y=LabelEncoder()y=labelencoder_y.fit_transform(y) |
5.将数据集分为训练集和测试集
|
1
2
3
4
5
|
from sklearn.model_selection import train_test_splitX_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.2,random_state=0)#X_train(训练集的字变量),X_test(测试集的字变量),y_train(训练集的因变量),y_test(训练集的因变量)#训练集所占的比重0.2~0.25,某些情况也可分配1/3的数据给训练集;train_size训练集所占的比重#random_state决定随机数生成的方式,随机的将数据分配给训练集和测试集;random_state相同时会得到相同的训练集和测试集 |
6.特征缩放
|
1
2
3
4
5
|
#特征缩放(两种方式:一:Standardisation(标准化);二:Normalisation(正常化))from sklearn.preprocessing import StandardScalersc_X=StandardScaler()X_train=sc_X.fit_transform(X_train)#拟合,对X_train进行缩放X_test=sc_X.transform(X_test)#sc_X已经被拟合好了,所以对X_test进行缩放时,直接转换X_test |
7.数据预处理模板
(1)导入标准库
(2)导入数据集
(3)缺失和分类很少遇到
(4)将数据集分割为训练集和测试集
(5)特征缩放,大部分情况下不需要,但是某些情况需要特征缩放
以上所述是给大家介绍的Python数据预处理详解整合。
Python----数据预处理代码实例的更多相关文章
- Python数据预处理:机器学习、人工智能通用技术(1)
Python数据预处理:机器学习.人工智能通用技术 白宁超 2018年12月24日17:28:26 摘要:大数据技术与我们日常生活越来越紧密,要做大数据,首要解决数据问题.原始数据存在大量不完整.不 ...
- python data analysis | python数据预处理(基于scikit-learn模块)
原文:http://www.jianshu.com/p/94516a58314d Dataset transformations| 数据转换 Combining estimators|组合学习器 Fe ...
- python数据预处理for knn
机器学习实战 一书中第20页数据预处理,从文本中解析数据的程序. import numpy as np def dataPreProcessing(fileName): with open(fileN ...
- Python数据预处理—归一化,标准化,正则化
关于数据预处理的几个概念 归一化 (Normalization): 属性缩放到一个指定的最大和最小值(通常是1-0)之间,这可以通过preprocessing.MinMaxScaler类实现. 常用的 ...
- Python数据预处理之清及
使用Pandas进行数据预处理 数据清洗中不是每一步都是必须的,按实际需求操作. 内容目录 1.数据的生成与导入 2.数据信息查看 2.1.查看整体数据信息 2.2.查看数据维度.列名称.数据格式 2 ...
- Python数据预处理(sklearn.preprocessing)—归一化(MinMaxScaler),标准化(StandardScaler),正则化(Normalizer, normalize)
关于数据预处理的几个概念 归一化 (Normalization): 属性缩放到一个指定的最大和最小值(通常是1-0)之间,这可以通过preprocessing.MinMaxScaler类实现. 常 ...
- Python数据预处理:使用Dask和Numba并行化加速
如果你善于使用Pandas变换数据.创建特征以及清洗数据等,那么你就能够轻松地使用Dask和Numba并行加速你的工作.单纯从速度上比较,Dask完胜Python,而Numba打败Dask,那么Num ...
- python数据预处理和特性选择后列的映射
我们在用python进行机器学习建模时,首先需要对数据进行预处理然后进行特征工程,在这些过程中,数据的格式可能会发生变化,前几天我遇到过的问题就是: 对数据进行标准化.归一化.方差过滤的时候数据都从D ...
- Python数据预处理—训练集和测试集数据划分
使用sklearn中的函数可以很方便的将数据划分为trainset 和 testset 该函数为sklearn.cross_validation.train_test_split,用法如下: > ...
随机推荐
- Linux(centos 7) 安装nginx
在安装nginx之前需要安装依赖的包 一. gcc 安装安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装: yum install gcc- ...
- 01_Request和Response
参考文档 http://www.iamnancy.top/djangorestframework/Responses/ https://q1mi.github.io/Django-REST-frame ...
- How To Install Docker On Ubuntu 18.04
Docker is an increasingly popular software package that creates a container for application developm ...
- MongoDB 分片键分类与数据分发
In sharded clusters, if you do not use the _id field as the shard key, then your application must en ...
- AS400 printer setting
(1) CRTOUTQ OUTQ(TESTLIB/PRINTER2) (2) CRTDEVPRT ===> CRTDEVPRT DEVD(PRINTER2) DEVCLS(*LAN) TYPE( ...
- asp.net文件上传下载组件
以ASP.NET Core WebAPI 作后端 API ,用 Vue 构建前端页面,用 Axios 从前端访问后端 API ,包括文件的上传和下载. 准备文件上传的API #region 文件上传 ...
- QVariantMap 和 QVariant
typedef QVariantMap Synonym for(同义词) QMap<QString, QVariant>. QVariant类型的放入和取出必须是相对应的,你放入一个int ...
- PHP sha1()函数
<!DOCTYPE html> <html> <body> <?php $str = "dashu"; echo sha1($str); ...
- LBA逻辑块地址
LBA简介 磁盘读取发展 IO操作读取硬盘的三种方式: chs方式 :小于8G (8064MB) LBA28方式:小于137GB LBA48方式:小于144,000,000 GB LBA方式访问使用了 ...
- js即时函数在异步回调中的运用
在编程中我们会接触到循环和异步编程的情况,这时异步回调执行逻辑就会出现问题.我们用setTimeout来模拟异步的: for(var i=0;i<3;i++){ setTimeout(funct ...