python+numpy创建“真正准确的”一维阵列: (1,)而不是(n, )

46 篇文章 2 订阅
15 篇文章 0 订阅

numpy好像没有直接的方法建立一维阵列

import numpy as np
number = np.array((1,10))
print(number.shape)
number = np.zeros(10)
print(number.shape)

在这里插入图片描述
可以看到这里并不能生成一维数据。
那么怎样才能生成一维阵列呢?

我们需要借助一个比较常用的函数:reshape
我们注意到这里reshape可以接受一个-1,最多只能接受一个。表示这个维度我们是未知的。
虽然我们直接不写-1,直接写1也是可以的。如下面的两幅图。
但是我推荐写-1,。
这里强调一点,python中维度很多时候是和其他平台不同,据我经验,与matlab很大不同。
因此,为了确保维度的正确性,我们在计算完之后都要用reshape进行强制变换一下
,所谓小心使得万年船。
在上篇博客里我就发现,numpy求一个矩阵最大数都是返回一个列向量,即使你是按行求最大值。例子的地址

import numpy as np
number = np.array((1,10))
print(number.shape)
number = np.zeros(10)
print(number.shape)
number = np.zeros(10).reshape(-1,10)
print(number.shape)

在这里插入图片描述

import numpy as np
number = np.array((1,10))
print(number.shape)
number = np.zeros(10)
print(number.shape)
number = np.zeros(10).reshape(-1,10)
print(number.shape)
number = np.zeros(10).reshape(1,10)
print(number.shape)

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值