数据处理、清洗

本文介绍了使用Pandas进行数据处理和清洗的各种方法,包括快速生成描述性报告、查看变量基本信息、数据分类计数、新增列、删除无用列、分类变量编码、随机抽取、数据归一化、缺失值处理以及异常值处理等。还提供了相关链接以深入理解每个操作。
摘要由CSDN通过智能技术生成
快速生成描述性报告

pandas_profiling需要安装(失败)

import pandas_profiling as pp
pp.ProfileReport(data)
查看变量基本信息
data.describe()
查看数据行列数
train_data.shape , test_data.shape
查看数据个数
ntr = len(train_data)
查看数据分类名称 unique()
data['护理来源'].unique()
数据分类计数 value_counts()
data['out'].value_counts()
新增列并赋值
# 新增因变量列,赋值缺失值,合并前区分数据集
test_data['肝炎'] = 'nan'
获取列名、合并数据集
# 列名列表
dcols = list(train_data.columns)

# 按同一列名合并,重置行标签
d0 = pd.concat([train_data[dcols],test_data[dcols]]).reset_index(drop=True)
删除无用列变量
d0.drop('ID',axis= 1,inplace=True)
分类变量编码
### 硬编码(树形模型适用)
from sklearn.preprocessing import LabelEncoder

x['区域'] = LabelEncoder().fit_transform(x['区域'])

### 哑变量(使用回归时)(自动识别分类变量)
d0 = pd.get_dummies(d0)

### 自己编码
## 对性别进行编码
def gender(x):
    if x=='M':
        return 0
    else:
        return 1
d0['性别']=d0['性别'].apply(gender)
## 对区域进行编码
def district(x):
    if x=='east':
        return 1
    elif x=='south':
        return 2
    elif x=='north':
        return 3
    else:
        return 4
d0['区域']=d0['区域'].apply(district)
## 对护理来源进行编码
def care(x):
    if x=='Governament Hospital':
        return 1
    if x=='Never Counsulted':
        return 2
    if x=='Private Hospital' or x==' ':
        return 3
    if x=='clinic':
        return 4
d0['护理来源']<
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值