![9d16ceb6381b6666111094b01133bc43.png](https://i-blog.csdnimg.cn/blog_migrate/d6af94b336eb7f59e70a843a35ae2948.jpeg)
IT服务圈儿
有温度、有态度的IT自媒体平台
![b167132f11ff7231352e6e5798eb2287.png](https://i-blog.csdnimg.cn/blog_migrate/1e857847fceb80bd4d40fe625f8aa812.jpeg)
本文经公众号:小数志(ID:Datazhi)授权转载,如需转载请联系出处。
导读
最近在用numpy过程中,总会不自觉的需要创建空数组,虽然这并不是一个明智的做法,但终究是可能存在这种需求的。本文简单记录3种用numpy生成空数组的方式。
00 关于np.empty
首先,numpy有一个"空数组"函数:np.empty(),虽然名字叫empty,但结果可能并不是我们想要的那种:那么,如果我们需要创建一个没有任何值的数组呢?这里以生成0行3列的空数组为例,笔者想到了3种方案。。
01 numpy指定形状为0
实际上,empty生成的数组当然可以为空,只要我们指定了相应的形状。例如,如果我们传入数组的形状参数为(0,3),则可以生成目标空数组:![f4783388d95eca85a0ddb7bd900c04ca.png](https://i-blog.csdnimg.cn/blog_migrate/c70fdb17404755d8b6512ac777fc16e1.png)
02 利用空列表创建
初始化numpy数组的一种方式是由列表创建,那么当我们传入的列表是空列表时即可创建空数组。特别的,为了创建指定列数的空列表,我们需要传入指定个数的嵌套空列表,然后转置即可。![f5920b151389139406ac827945b15af6.png](https://i-blog.csdnimg.cn/blog_migrate/1895e9476a2a35afd9afd0bc1ea1b80d.png)
03 利用pandas转换生成
numpy和pandas是一对好搭档,常常需要对二者数据进行转换,在创建空数组时自然也可以。为了创建一个空数组,我们可以首先考虑先创建一个空的DataFrame,然后由其转换为numpy对象即实现了创建空数组。首先,我们创建一个仅有列名、而没有索引和值的空DataFrame:![190b8a0022e2a04d02df483daf5c2042.png](https://i-blog.csdnimg.cn/blog_migrate/6be18e2efaf3de6134afc98a51bf675b.png)
![3da045cbf594915475180a1e2b2dc0eb.png](https://i-blog.csdnimg.cn/blog_migrate/5d74c474b4772203e843c955b4a34b5c.png)
可能多数情况下并不需要创建空数组,甚至存在更好的替代办法,但就事论事的讲,这些也都不失为一个丰富numpy姿势的小技巧。
![2c835066c34f495db3be59b06bc337b6.png](https://i-blog.csdnimg.cn/blog_migrate/5b3074d8f16fd466934e2354b96748c1.png)
Go 为什么这么“快”
如何优雅地用Python3发送Zabbix告警推送
Ubuntu 20.04 LTS(Focal Fossa)发布
网友高校“线上答辩”上热搜!网友:问到不懂就说网卡……
*版权声明:转载文章和图片均来自公开网络,版权归作者本人所有,推送文章除非无法确认,我们都会注明作者和来源。如果出处有误或侵犯到原作者权益,请与我们联系删除或授权事宜。