ML之FE:对pandas的dataframe中的类别型字段进行数字编码化(类别型特征数值化)并导出映射表daiding

简介: ML之FE:对pandas的dataframe中的类别型字段进行数字编码化(类别型特征数值化)并导出映射表daiding


目录

对pandas的dataframe中的类别型字段进行数字编码化(类别型特征数值化)并导出映射表


对pandas的dataframe中的类别型字段进行数字编码化(类别型特征数值化)并导出映射表

1. # ML之FE:对pandas的dataframe中的类别型字段进行数字编码化(类别型特征数值化)并导出映射表
2. from sklearn.preprocessing import LabelEncoder
3. from NDataScience.DataAnalysis import Dict2DfByRow
4. for col in df.columns:
5. print(col,df[col].dtype)
6. if df[col].dtype in ['float64', 'int', 'int64']:
7.         df[col] = pd.to_numeric(df[col])
8. else:
9. # 全部字符串化
10.         df[col] = df[col].apply(str)
11. 
12. # 编码化
13.         LbE = LabelEncoder()
14.         LbE.fit(df[col])
15.         df[col] = LbE.transform(df[col])
16. 
17. #导出映射表:开发逻辑中需要
18.         mapping_dict = dict(zip(LbE.classes_, range(1, len(LbE.classes_) + 1)))
19.         mapping_dict = {encode: label for label, encode in enumerate(LbE.classes_)}
20.         Dict2DfByRow(mapping_dict,mark=col)


相关文章
|
3月前
|
SQL 索引 Python
Pandas中DataFrame合并的几种方法
Pandas中DataFrame合并的几种方法
201 0
|
3月前
|
机器学习/深度学习 数据处理 Python
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
81 0
|
24天前
|
SQL 数据采集 数据可视化
Pandas 数据结构 - DataFrame
10月更文挑战第26天
39 2
Pandas 数据结构 - DataFrame
|
4月前
|
索引 Python
Pandas学习笔记之Dataframe
Pandas学习笔记之Dataframe
|
4月前
|
数据挖掘 大数据 数据处理
数据分析师的秘密武器:精通Pandas DataFrame合并与连接技巧
【8月更文挑战第22天】在数据分析中,Pandas库的DataFrame提供高效的数据合并与连接功能。本文通过实例展示如何按员工ID合并基本信息与薪资信息,并介绍如何基于多列(如员工ID与部门ID)进行更复杂的连接操作。通过调整`merge`函数的`how`参数(如'inner'、'outer'等),可实现不同类型的连接。此外,还介绍了使用`join`方法根据索引快速连接数据,这对于处理大数据集尤其有用。掌握这些技巧能显著提升数据分析的能力。
71 1
|
4月前
【Pandas+Python】初始化一个全零的Dataframe
初始化一个100*3的0矩阵,变为Dataframe类型,并为每列赋值一个属性。
51 2
|
4月前
|
SQL 数据采集 JSON
Pandas 使用教程 Series、DataFrame
Pandas 使用教程 Series、DataFrame
69 0
|
4月前
|
Python
[pandas]从多个文件中构建dataframe
[pandas]从多个文件中构建dataframe
|
4月前
|
关系型数据库 MySQL Shell
pandas读取mysql并导出为excel
pandas读取mysql并导出为excel
|
4月前
|
索引 Python
【Pandas】Pandas Dataframe 常用用法
Pandas DataFrame的常用操作示例,包括筛选数据、索引操作、合并DataFrame、设置和排序索引、文本处理、列重命名、处理缺失值、排序以及删除满足特定条件的行等技巧。
67 0