【Python】深入理解NumPy数组中的一维向量
一、一维向量
1.1 它到底是行向量还是列向量?
思路:利用点乘两个向量维度进行对应的测试
- 测试1
import numpy as np
a = np.array([[1,1,1,1],[1,1,1,1]]).T #4*2矩阵...: b = np.array([2,3]) #长度为2的一维向量...: print(a)...: print(b)...: print(a.shape)...: print(b.shape)...: print(np.dot(a,b))
[[1 1][1 1][1 1][1 1]]
[2 3]
(4, 2)
(2,)
[5 5 5 5]
证明已经确定,一维向量b可以作为列向量与矩阵a相乘。
- 测试2
a = np.array([[1,1,1,1],[1,1,1,1]]).T #4*2矩阵...: b = np.array([2,3]).T #长度为2的一维向量...: print(a)...: print(b)...: print(a.shape)...: print(b.shape)...: print(np.dot(a,b))
[[1 1][1 1][1 1][1 1]]
[2 3]
(4, 2)
(2,)
[5 5 5 5]
numpy中的一维向量既可以作为行向量,也可以作为列向量存在
二、思考
2.1 一维数组的转置
一维数组的转置仍是自己本身,这点根据上述实验的一维向量b的shape就能看出来,b.T(转置后)维度不变
它只是一个长度为2的一维向量
2.2 习惯上用二维矩阵而不是一维矩阵来表示行向量和列向量
因为二维必定能够确定他是行向量还是列向量。
b = np.array([[2,3]]) #行向量
c = np.array([[2],[3]]) #列向量
print(b)
print(c)
print(b.shape)
print(c.shape)[[2 3]]
[[2][3]]
(1, 2)
(2, 1)
三、总结
3.1 一维向量
Numpy中的数组shape为(m,)说明它是一个一维数组,或者说是一个向量
3.2 系统会自动判别行列向量
但是具体是行向量还是列向量是很灵活的,再与矩阵进行矩阵乘法时,numpy会自动判断此时的一维数组应该取行向量还是列向量。
3.3 总结
所以说,无须纠结得到的一维数组是行向量还是列向量,或者说一维数组在用户看来就没有行列之分,其行列的不同在Python计算时会自动进行处理。
3.4 事实
numpy对数组的转置也可以看出来,对一维数组进行转置操作,numpy内部不会对其进行任何的操作。
【Python】深入理解NumPy数组中的一维向量相关推荐
- python 如何理解 numpy 数组操作中的 axis 参数?
以前在看numpy数组操作的有关axis的操作时, 常常理解不了, 比如像下面这种: [代码1] 求沿指定轴上的最大值(2维): import numpy as np a = np.array([[7 ...
- 理解numpy数组中的各个维度代表的具体意思(axis)
1.学过numpy array的人都会有个疑问:很多np.xxx()函数总有个argument是axis,到底这个axis是什么东西? 2.下面我就来真正剖析这个axis 我举个简单的三维数组的例子: ...
- python编写自定义函数计算一维numpy数组中与指定目标数值最接近(距离最近)的数值(find closest value in numpy array to a certain value)
python编写自定义函数计算一维numpy数组中与指定目标数值最接近(距离最近)的数值(find closest value in numpy array to a certain value) 目 ...
- python使用np.argsort对一维numpy概率值数据排序获取倒序索引、获取的top索引(例如top2、top5、top10)索引二维numpy数组中对应的原始数据:原始数据概率最大的头部数据
python使用np.argsort对一维numpy概率值数据排序获取倒序索引.获取的top索引(例如top2.top5.top10)索引二维numpy数组中对应的原始数据:原始数据概率最大的头部数据 ...
- python使用np.argsort对一维numpy概率值数据排序获取升序索引、获取的top索引(例如top2、top5、top10)索引二维numpy数组中对应的原始数据:原始数据概率最小的头部数据
python使用np.argsort对一维numpy概率值数据排序获取升序索引.获取的top索引(例如top2.top5.top10)索引二维numpy数组中对应的原始数据:原始数据概率最小的头部数据 ...
- Python 数据分析三剑客之 NumPy(一):理解 NumPy / 数组基础
CSDN 课程推荐:<Python 数据分析与挖掘>,讲师刘顺祥,浙江工商大学统计学硕士,数据分析师,曾担任唯品会大数据部担任数据分析师一职,负责支付环节的数据分析业务.曾与联想.亨氏.网 ...
- c语言随机生成整数存放一维数组_文科生学 Python 系列 7: Numpy 数组/索引和切片...
第四课:本课内容: • 0. 导入 NumPy 包 • 1. 创建 NumPy 数组 • 2. 索引和切片 • 3. 读取文件 • 4. 布尔型索引 • 5. 数组的运算 • 6. 常用函数举例 Nu ...
- 关于Numpy数组中属性shape的理解
关于Numpy数组中属性shape的理解 概述:numpy数组都有着shape这一属性,怎么理解这一属性呢?看以下代码: # 关于numpy中shape参数的深刻理解 p1 = np.array([1 ...
- python数组长度查询_python – 在numpy数组中查找相同值的序列长度(运行长度编码)...
在pylab程序中(也可能是一个matlab程序)我有一个代表距离的numpy数组:d [t]是时间t的距离(我的数据的时间跨度是len(d)时间单位) . 我感兴趣的事件是当距离低于某个阈值时,我想 ...
最新文章
- 宏基因组合种华山松、云杉专车3天领证
- 周五晚上看了变形金刚
- Linux 常见的六大 IPC 通信方式
- SQL Server 负载均衡方案集锦
- 内核启动流程—走马观花
- 【Notification】屏蔽特定应用的通知提示
- 日记侠:要赚钱千万别多想立刻开干
- Java中用System.getProperty(...)获取系统属性
- 网站被劫持的解决方案、网站被劫持怎么办、网站被劫持有什么解决办法
- 员工转正申请书_员工转正申请书优秀范文两篇
- 《Web API 的设计与开发》读书笔记
- c语言入门题目:输出两行短句
- 回忆旧时读叶芝的WHEN YOU ARE OLD
- Java秘史——名字的来历
- 解决闲人的简单JS别踩白块(简易版)小游戏啦!
- Spring MVC 在JSP中获取 Service或Dao
- 【转】实战USB接口手机充电 看3.0/2.0谁更快
- 计算机中的所有信息都是以什么形式存在,信息格式
- [原创]图像算法:对广角镜头造成的畸变进行修正
- 新能源电机控制器简介