Python Day8

@浙大疏锦行 PythonDay8.

内容:

  • 字典(字典对)
    *

    python 复制代码
    dict_test = dict(name='zhangsan', age=18)
  • 标签编码(离散特征 && 有顺序)

  • 连续特征的归一化和标准化处理

代码:

python 复制代码
# Question 1 dic
dict = {'Alice': 100, 'Bob': 200, 'Charlie': 300}

# Question 2 label-Code and 连续变量编码
import pandas as pd
import numpy as np

# 独热编码
def one_hot(data, columns):
    data = pd.get_dummies(data=data, columns=columns)
    return data
# 标签编码
def label_encoder(data, columns):
    if len(columns)  == 0:  # 处理异常情况
        return data
    value_index = list(range(len(columns))) # [1 2 3 4 5 6]
    mapping = dict(zip(columns, value_index))
    data[columns] = data[columns].map(mapping)
    return data
# 归一化
def min_max(data, columns):
    if len(columns)  == 0:  # 处理异常情况
        return data
    for column in columns:
        column_data = data[column]
        min_val = column_data.min()
        max_val = column_data.max()
        column_data = (column_data - min_val) / (max_val - min_val)
        data[column] = column_data
    return data

data = pd.read_csv("./data/heart.csv")
discrete_columns = []
continuous_columns = []
for column in data.columns:
    if data[column].dtype == 'object':
        discrete_columns.append(column)
    else:
        continuous_columns.append(column)

data = min_max(data, continuous_columns) # 归一化
# data = one_hot(data, discrete_columns) # 独热编码
data = label_encoder(data, discrete_columns) # 标签编码

print(data.head())
相关推荐
念念01072 小时前
数学建模竞赛中评价类相关模型
python·数学建模·因子分析·topsis
云天徽上3 小时前
【数据可视化-94】2025 亚洲杯总决赛数据可视化分析:澳大利亚队 vs 中国队
python·信息可视化·数据挖掘·数据分析·数据可视化·pyecharts
☺����3 小时前
实现自己的AI视频监控系统-第一章-视频拉流与解码2
开发语言·人工智能·python·音视频
王者鳜錸3 小时前
PYTHON让繁琐的工作自动化-函数
开发语言·python·自动化
xiao助阵4 小时前
python实现梅尔频率倒谱系数(MFCC) 除了傅里叶变换和离散余弦变换
开发语言·python
麻辣清汤6 小时前
结合BI多维度异常分析(日期-> 商家/渠道->日期(商家/渠道))
数据库·python·sql·finebi
钢铁男儿6 小时前
Python 正则表达式(正则表达式和Python 语言)
python·mysql·正则表达式
钢铁男儿6 小时前
Python 正则表达式实战:解析系统登录与进程信息
开发语言·python·正则表达式
前端小趴菜056 小时前
python - range
python
☺����6 小时前
实现自己的AI视频监控系统-第一章-视频拉流与解码1
人工智能·python·音视频