Python数据分析NumPy和pandas(二十一、数据清洗和预处理之三:扩展数据类型)

pandas 最初是基于NumPy构建的,NumPy 是一个主要用于处理数值数据的数组计算库。许多 pandas 概念(例如缺失数据)是使用 NumPy 中可用的内容实现的,同时试图最大限度地提高同时使用 NumPy 和 pandas 的库之间的兼容性。

在 NumPy 上构建pandas也导致了许多缺点,例如:

1.某些数值数据类型 (如整数和布尔值) 的缺失数据处理不完整。因此,当缺失数据被引入此类数据时,pandas 将数据类型转换为 float64 并使用 np.nan 表示 null 值。这在许多 pandas 算法中引入了微妙的问题,从而产生了复合效应。

2.具有大量字符串数据的数据集计算成本高昂,并且使用大量内存。

3.如果不使用计算成本高昂的 Python 对象数组,则无法有效地支持某些数据类型,例如时间间隔、时间增量和带时区的时间戳。

pandas 开发了一个扩展类型系统,允许添加新的数据类型,即使 NumPy 本身不支持它们。这些新数据类型可以与来自 NumPy 数组的数据一起被视为同等。我们创建一个具有缺失值的 Series 整数数组:

import numpy as np
import pandas as pd

s = pd.Series([1, 2, 3, None])
print(s)
print(s.dtype)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FreedomLeo1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值