前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >用numpy如何创建一个空数组?

用numpy如何创建一个空数组?

作者头像
luanhz
发布2020-05-04 21:19:01
8.7K0
发布2020-05-04 21:19:01
举报
文章被收录于专栏:小数志小数志

导读

最近在用numpy过程中,总会不自觉的需要创建空数组,虽然这并不是一个明智的做法,但终究是可能存在这种需求的。本文简单记录3种用numpy生成空数组的方式。

我们的目标是创建一个指定列数、但空无一行的空数组。

00 关于np.empty

首先,numpy有一个"空数组"函数:np.empty(),虽然名字叫empty,但结果可能并不是我们想要的那种:

实际上,empty之空,空在其值,而非其形。也就说,它只是用于创造一个给定形状、但未初始化实体的数组。例如:

那么,如果我们需要创建一个没有任何值的数组呢?这里以生成0行3列的空数组为例,笔者想到了3种方案。。


01 numpy指定形状为0

实际上,empty生成的数组当然可以为空,只要我们指定了相应的形状。例如,如果我们传入数组的形状参数为(0,3),则可以生成目标空数组:

所以,生成的数组是否为空,不在于你用的是不是empty,而在于传入的形状参数。当然, 这里的empty换成ones或者zeros也都可以,只要形状是(0, 3)即可。


02 利用空列表创建

初始化numpy数组的一种方式是由列表创建,那么当我们传入的列表是空列表时即可创建空数组。特别的,为了创建指定列数的空列表,我们需要传入指定个数的嵌套空列表,然后转置即可。


03 利用pandas转换生成

numpy和pandas是一对好搭档,常常需要对二者数据进行转换,在创建空数组时自然也可以。为了创建一个空数组,我们可以首先考虑先创建一个空的DataFrame,然后由其转换为numpy对象即实现了创建空数组。

首先,我们创建一个仅有列名、而没有索引和值的空DataFrame:

进而,可由该DataFrame对象转化为空数组:

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-04-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小数志 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档