Python打卡训练营学习记录Day5

day5

离散特征的独热编码

先按照示例代码过一遍,然后完成下列题目

现在在py文件中 一次性处理data数据中所有的连续变量和离散变量

1. 读取data数据

2. 对离散变量进行one-hot编码

3. 对独热编码后的变量转化为int类型

  1. 对所有缺失值进行填充

注意是py文件中,所以每一步的输出是否正确需要你来使用debugger功能来逐步查看

# 读取数据
import pandas as pd
data = pd.read_csv("data.csv")
# 查看数据信息
data.info()
# 查看列表数据格式
print(data.dtypes)
# 对离散特征进行独热编码
discrete_list = []
for i in data.columns:
    if data[i].dtype == 'object':
        discrete_list.append(i)
data = pd.get_dummies(data,columns = discrete_list,drop_first=True)
print(data.dtypes)
# 对独热编码的列转化成int类型
data2 = pd.read_csv("data.csv")
lists_final = data.columns.difference(data2.columns)
# lists_final = []
# for i in data.columns:
#     if i not in data2.columns:
#         lists_final.append(i)
data[lists_final] = data[lists_final].astype('int')
print(data.dtypes)
#查看并补全缺失值
print(data.isnull().sum())
for i in data.columns:
    if data[i].isnull().sum() > 0:
        mean_value =data[i].mean()
        data[i].fillna(mean_value,inplace=True)
print(data.isnull().sum())

@浙大疏锦行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值