Numpy ndarray与Pandas dataframe数据结构的分析

Numpy ndarrayNumpy是高性能科学计算和数据分析的基础包,其提供了一个重要的数据结构ndarray。ndarray是一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组,是一个通用的同构数据多维容器(所有元素必须是相同的类型)。此外其提供了一个简单易用的C API,因此很容易将数据传递给低级语言编写的外部库。Pandas dataframePandas为目前最常用的数据...
摘要由CSDN通过智能技术生成

Numpy ndarray
Numpy是高性能科学计算和数据分析的基础包,其提供了一个重要的数据结构ndarray。ndarray是一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组,是一个通用的同构数据多维容器(所有元素必须是相同的类型)。此外其提供了一个简单易用的C API,因此很容易将数据传递给低级语言编写的外部库。

Pandas dataframe
Pandas为目前最常用的数据分析与处理的高级库,其提供了一个使数据分析变得更简单快捷的高级数据结构pandas。dataframe基于numpy的ndarray构建而成,dataframe可以自动添加索引,并自动根据索引将数据进行对齐。dataframe还可以灵活的方便的处理缺失数据以及重复数据,其同样支持其他的关系型数据库中常用的功能方法。

关于dataframe占用内存大
dataframe处理小规模的数据集(小于100兆)时,其性能不会成为问题。处理大规模数据集(数百G)时一般使用spark等大数据工具。对于中等数据集(数G)dataframe容易遭遇性能瓶颈,为了在中等数据集上使用灵活且便利的dataframe数据格式,需要了解dataframe占用内存大的原因,并找到解决的方法。
在dataframe中相同数据类型dtypes的列会被存储在同一个块block中,每一个block是一个numpy ndarray并存储于内存中连续的区域。pandas 的 BlockManager 类则负责保留行列索引与实际块之间的映射关系。将数据初始导入为dataframe格式时,每个block都是用相同的数据结构,会导致占用高于理论值的内存。

逐条生成并写入特征数据

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值