IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> [Kaggle Courses]数据清洗 Data Cleaning -> 正文阅读

[Python知识库][Kaggle Courses]数据清洗 Data Cleaning

一、简介

数据清洗 是数据科学中的关键一步,它涉及到处理数据空值、删除重复信息、提供正确的数据格式等等。数据清洗往往发生在一个项目最开始的阶段,经常用到的工具是 pandas,还会用到 numpysklearn
通常通过以下方法引入 pandasnumpy

import pandas as pd
import numpy as np

二、数据鸟瞰和空值处理

1. 数据鸟瞰

通过以下方式查看dataframe中的一些例子:

df.head(n)#从顶部计数n
df.tail(n)#从底部计数n
df.sample(n)#可以进行随机抽样

通过以下方式查看dataframe的数值特征和摘要:

df.describe()
df.info()

2. 空值处理

通过以下方法查看dataframe中每列的的空值:

df.isnull().sum()

通过以下方法可以丢弃空值:

df.dropna(axis=0)
#如果axis = 0就丢弃有空值的行row
#如果axis = 1就丢弃有空值的列columns

通过以下方法填充空值:

df.fillna(
	value = None,#value可以指定所填充的值
	method = None,#method可以指定填充方法,具体有{'backfill', 'bfill', 'pad', 'ffill', None}
	axis = None#axis可以在哪个轴上填充值
)

三、缩放(Scaling)、归一化(MinMax)和标准化(Normalization)

1. 缩放和归一化

数据的 缩放 通过变换将数据映射到特定的区间上,从而使不同维度上的特征有一定比较性,以此适应不同算法(如SVM、KNN)的需求。 归一化 是一种特殊的缩放方式,它将数据放缩到区间 [0,1] ,公式为:
x ? = x ? m i n m a x ? m i n x^* = \frac{x - min}{max-min} x?=max?minx?min?
可以通过 sklearn 库中的MinMaxScaler实现归一化。

from sklearn.preprocessing import MinMaxScaler
mmx_sca = MinMaxScaler()
data_mmx = mmx_sca.fit_transform(data)

2. 标准化

标准化 可以将数据分布转换为正态分布,是数据更加符合统计假设。公式如下:
x ? = x ? μ σ x^* = \frac{x-\mu}{\sigma} x?=σx?μ?
其中 μ \mu μ 为均值, σ \sigma σ 为方差。
可以通过 sklearn 库中的StandardScaler实现归一化。

from sklearn.preprocessing import StandardScaler
std_sca = StandardScaler()
data = sta_sca.fit_transform(data)

四、时间转换

datetime 是python内置的处理时间的标准库。pandas 中有专门处理时间的函数 pd.to_datetime,将数据转换为时间类型(datatime类)。

import pandas as pd
import datetime
pd.to_dateime(series,format="%Y/%m/%d")

其中format是数据中时间的格式。也可以用 datetime 库中的 strptime 实现以上功能。

五、字符编码

字符编码主要为避免乱码的出现。python3中提供了方便的编码/解码函数。

before = binary.decode("big5-tw")#将binary按 big-tw编码
after = before.encode()#将before转为二进制码

六、不一致的数据输入

不一致的输入的意思是相同的内容却用了不同的形式表示,如 “Germany” 和 “germany”,如果将其放入输入中,函数将会将其视为两个类别。
可以使用 pandas 中的Series.str方法,这样你就可以对整列使用熟悉的 python3 字符串方法。
比如

df["column"].str.strip()#该方法去除column列中每一个字符串的首位空格

通过 unique() 方法创建集合从而达到去重的目的

df["column"].unique()
  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-09-03 11:50:39  更:2021-09-03 11:52:32 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 12:50:15-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码