背景: 在拿到的数据里,经常有分类型变量的存在,如下: 球鞋品牌:Nike.adidas. Vans.PUMA.CONVERSE 性别:男.女 颜色:红.黄.蓝.绿 However,sklearn大佬不能直接分析这类变量呀.在回归,分类,聚类等机器学习算法中,特征之间距离的计算或相似度的计算是算法关键部分,而常用的距离或相似度的计算都是在欧式空间的相似度计算,计算余弦相似性,基于的就是欧式空间.于是,我们要对这些分类变量进行哑变量处理,又或者叫虚拟变量. 缺点: 当类别的数量很多时,特征空间会变…
1.LabelEncoder() # 用于构建数字编码 2 .map(dict_map)  根据dict_map字典进行数字编码的映射 3.OnehotEncoder()  # 进行one-hot编码,输入的参数必须是二维的,因此需要做reshape,同时使用toarray() 转换为列表形式 3  pd.get_dummies(feature,drop_first=False) 如果填单个特征的话,只对一个特征做one-hot编码映射, drop_first表示去除one-hot编码后的第一列…
在这个案例中: 1. datetime.datetime.strptime(data, '%Y-%m-%d') # 由字符串格式转换为日期格式 2. pd.get_dummies(features)  # 将数据中的文字标签转换为one-hot编码形式,增加了特征的列数 3. rf.feature_importances 探究了随机森林样本特征的重要性,对其进行排序后条形图 4.fig.autofmt_xdate(rotation=60)  # 对图中的X轴标签进行60的翻转 代码: 第一步:数…
一.理论介绍 虚拟变量(dummy variable)也叫哑变量,是一种将多分类变量转换为二分变量的一种形式. 如果多分类变量有k个类别,则可以转化为k-1个二分变量. 需要有一个参照的类别. 在非线性关系的模型中,特别重要. 在模型分析时,虚拟变量都是同进同出,要么都在模型中,要么都不在模型中,不能只保留一个. 二.函数介绍 pandas 中可以利用 get_dummies() 函数进行哑变量编码. 使用语法: pd.get_dummies(data, # 输入的数据框 prefix=None…
sklearn.preprocessing 下除了提供 OneHotEncoder 还提供 LabelEncoder(简单地将 categorical labels 转换为不同的数字): 1. 简单区别 Panda's get_dummies vs. Sklearn's OneHotEncoder() :: What is more efficient? sklearn.preprocessing 下的 OneHotEncoder 不可以直接处理 string,如果数据集中的某些特征是 stri…
来源引用:https://blog.csdn.net/han_xiaoyang/article/details/50629608 1.引言 贝叶斯是经典的机器学习算法,朴素贝叶斯经常运用于机器学习的案例.比如说 文本分类/垃圾邮件的分类/情感分析:在文本分类中,贝斯依旧占有一席之地,因为文本数据中,分布独立这个假设基本上成立的. 推荐系统:朴素贝叶斯和协同过滤一起使用,经常出现在推荐系统.以后有机会会好好写一篇关于推荐系统的文章. 值得提醒的,以下部分点是要知道的: 数据要服从正态分布, 使用拉…
一.数据集预处理 1.数据读入 import pandas as pd import numpy as np import datetime as date import datetime as dt #先导入数据 off_train = pd.read_csv("data/ccf_offline_stage1_train.csv",header = 0) off_train.columns = ['user_id','merchant_id','coupon_id','discoun…
概述 1912年4月15日,泰坦尼克号在首次航行期间撞上冰山后沉没,2224名乘客和机组人员中有1502人遇难.沉船导致大量伤亡的原因之一是没有足够的救生艇给乘客和船员.虽然幸存下来有一些运气因素,但有一些人比其他人更有可能生存,比如妇女,儿童和上层阶级.在本文中将对哪些人可能生存作出分析,特别是运用Python和机器学习的相关模型工具来预测哪些乘客幸免于难,最后提交结果.从kaggle泰坦尼克生存预测项目下载相关数据. 实施步骤 1.提出问题 什么样的人在泰坦尼克号中更容易存活? 2.理解数据…
使用了RamdomedSearchCV迭代100次,从参数组里面选择出当前最佳的参数组合 在RamdomedSearchCV的基础上,使用GridSearchCV在上面最佳参数的周围选择一些合适的参数组合,进行参数的微调 1.  RandomedSearchCV(estimator=rf, param_distributions=param_random, cv=3, verbose=2,random_state=42, n_iter=100) # 随机选择参数组合 参数说明:estimator…
在上一个博客中,我们构建了随机森林温度预测的基础模型,并且研究了特征重要性. 在这个博客中,我们将从两方面来研究数据对预测结果的影响 第一方面:特征不变,只增加样本的数据 第二方面:增加特征数,增加样本的数据 1.sns.pairplot 画出两个变量的关系图,用于研究变量之间的线性相关性,sns.pattle([color]) 用于设置调色板, 有点像scatter_matrix 2.MSE   round(abs(pred - test_y).mean(), 2)  研究预测值与真实值之差的…
监督学习: 为CharityML寻找捐献者   开始 在这个项目中,你将使用1994年美国人口普查收集的数据,选用几个监督学习算法以准确地建模被调查者的收入.然后,你将根据初步结果从中选择出最佳的候选算法,并进一步优化该算法以最好地建模这些数据.你的目标是建立一个能够准确地预测被调查者年收入是否超过50000美元的模型.这种类型的任务会出现在那些依赖于捐款而存在的非营利性组织.了解人群的收入情况可以帮助一个非营利性的机构更好地了解他们要多大的捐赠,或是否他们应该接触这些人.虽然我们很难直接从公开…
import numpy as np import pandas as pd So far(到目前为止) in this chapter we've been concerned with rearranging data. Filterng, cleaning, and other transformations are another class of important oprations. 数据去重 Duplicate rows may be found in a DataFrame f…
Pandas_特征编码 one-hot encoding 基本思想是将离散型特征的每一种取值都看成一种状态,保证每一个取值只会使得一种状态处于激活状态. 编码函数pd.get_dummies() dummy encoding 哑变量编码的基本思想是任意的将一个状态位去除,其他的状态位都不激活时,自然就表示被去除的状态位. 注意: Series 里的整数会被one-hot编码,但是DataFrame里则不会. pandas.DataFrame.values用于将pandas的DataFrame转换…
目录 引言 数据认识 总结 特征处理 建模预测 logistic分类模型 随机森林 SVM xgboost 模型验证 交叉验证 学习曲线 高偏差: 高方差 模型融合 总结 后记 引言 一直久闻kaggle大名,自己也陆陆续续学了一些机器学习方面的知识,想在kaggle上面尝试一下,但是因为各种烦杂的事情和课业拖累,一直没时间参加一次kaggle的比赛.这次我将用kaggle的入门赛:Titanic: Machine Learning from Disaster来让我熟悉比赛流程和各种数据处理技巧…
1.准备数据 import numpy as np import pandas as pd import matplotlib.pyplot as plt import tensorflow as tf from tensorflow.keras import models,layers dftrain_raw = pd.read_csv('./data/titanic/train.csv') dftest_raw = pd.read_csv('./data/titanic/test.csv')…
给出了旧金山以往犯罪活动的相关信息,预测特定条件下的犯罪情况 分析数据集和测试集信息: 训练集给出的信息有: 1.Dates:时间日期和时间,这里考虑时间对犯罪活动有影响,日期和下边的周几有相似处,取周几作为特征,因为节日是少数情况 2.category:犯罪分类,就是实例的标签 3.descript:对于犯罪的描述,没用的信息 4.DayOfWeek:周几,可能是有影响的 5.PdDistrict:地区,重要信息 6.Resolution:缺失值太多,弃用 7.Address:分类太多,而且和…
在上一篇博客中介绍了数值型数据的预处理但是真实世界的数据集通常都含有分类型变量(categorical value)的特征.当我们讨论分类型数据时,我们不区分其取值是否有序.比如T恤尺寸是有序的,因为XL>L>M.而T恤颜色是无序的.在讲解处理分类数据的技巧之前,我们先创建一个新的DataFrame对象: import pandas as pd from pandas import DataFrame data = {'color':['green','red','blue'],       …
One-Hot编码 What.Why And When? 一句话概括:one hot编码是将类别变量转换为机器学习算法易于利用的一种形式的过程. 目录: 前言: 通过例子可能更容易理解这个概念. 假设我们有一个迷你数据集: 公司名 类别值 价格 VW 1 20000 Acura 2 10011 Honda 3 50000 Honda 3 10000 其中,类别值是分配给数据集中条目的数值编号.比如,如果我们在数据集中新加入一个公司,那么我们会给这家公司一个新类别值4.当独特的条目增加时,类别值将…
One-Hot独热编码 Dummy Encoding VS One-Hot Encoding二者都可以对Categorical Variable做处理,定性特征转换为定量特征,转换为定量特征其实就是将原来每个特征的类别拿出来作为一个新的特征(Dummy Variable)了,如性别——男,女,定量特征即将男作为一个特征,女作为一个特征,如果数据中的Categorical Variable很多,且每个Variable种类比较多,那么转换后的数据可能会非常稀疏.两者本身存在差别:difference…
1 get_dummies函数 有多少种不同类就会产生多少位的编码,生成的age_df 实际上是一个变量,其存储着dataframe数据类型 完全可按dataframe对其操作 age_df = pd.get_dummies(user["age"], prefix="age") #prefix用于起列名,一般用原列名,也可自己定义 sex_df = pd.get_dummies(user["sex"], prefix="sex"…
转载:https://blog.csdn.net/mvpboss1004/article/details/79188190 pandas中的get_dummies得到的one-hot编码数据类型是uint8,进行数值计算时会溢出!!! import pandas as pd import numpy as np a = [1, 2, 3, 1] one_hot = pd.get_dummies(a) print(one_hot.dtypes) print(one_hot) print(-one_…
实现one hot encode的两种方法: https://stackoverflow.com/questions/37292872/how-can-i-one-hot-encode-in-python 利用pandas实现one hot encode: # transform a given column into one hot. Use prefix to have multiple dummies >>> import pandas as pd >>> df…
import pandas as pd import numpy as np import matplotlib.pyplot as plt name = np.array([['jack', 'ross', 'john', 'blues', 'frank', 'bitch', 'haha', 'asd', 'loubin']]) age = np.array([[12, 32, 23, 4,32,45,65,23,65]]) married = np.array([[1, 0, 1, 1, 0…
kaggle地址 github地址 特点: 离散特征 离散特征二值化处理 数据概览 import pandas as pd import numpy as np # 载入数据 train = pd.read_csv('~/kaggle/dataset/San_Francisco_Crime_Classification/train.csv', parse_dates = ['Dates']) test = pd.read_csv('~/kaggle/dataset/San_Francisco_C…
python信用评分卡(附代码,博主录制) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_campaign=commission&utm_source=cp-400000000398149&utm_medium=share https://blog.csdn.net/arsenal0435/article/details/80446829(原文链接) 1.本项目需解决的问题    本项目通…
Spyder   Ctrl + 4/5: 块注释/块反注释 本文总结的是我们大家在python中常见的数据预处理方法,以下通过sklearn的preprocessing模块来介绍; 1. 标准化(Standardization or Mean Removal and Variance Scaling) 变换后各维特征有0均值,单位方差.也叫z-score规范化(零均值规范化).计算方式是将特征值减去均值,除以标准差. sklearn.preprocessing.scale(X) 一般会把trai…
select symbol, "price.*" from stocks :使用正则表达式来指定列查询 select count(*), avg(salary) from emplyee: 聚合函数 select count(distinct col) from stocks:去重后的数目 嵌套查询: from(select upper(name), salary,deductions["Federal Taxes"] as fed_taxes,round(sala…
最近博主在做个 kaggle 竞赛,有个 Kernel 的数据探索分析非常值得借鉴,博主也学习了一波操作,搬运过来借鉴,原链接如下: https://www.kaggle.com/willkoehrsen/start-here-a-gentle-introduction 1 数据介绍 数据由Home Credit提供,该服务致力于向无银行账户的人群提供信贷(贷款).预测客户是否偿还贷款或遇到困难是一项重要的业务需求,Home Credit将在Kaggle上举办此类竞赛,以了解机器学习社区可以开展…
本博客是博主在学习了两篇关于 "House Prices: Advanced Regression Techniques" 的教程 (House Prices EDA 和 Comprehensive data exploration with Python )后的总结,重点在于探究如何分析真实数据的分布以及如何对数据进行预处理,同时强化 pandas 和 seaborn 包的操作技巧. 1 了解数据的基本统计信息 利用pandas读取数据: import pandas as pd im…
import pandas as pd data_forest_fires = pd.read_csv("data/forestfires.csv", encoding='gbk') data1 = pd.read_excel("data/original_data.xls", sheet_name="原始数据")data2 = pd.read_excel("data/original_data.xls", sheet_nam…