关于numpy中的一维行向量、列向量的理解

Numpy生成行向量,列向量(1024水勋章文) 文章目录前言一、行向量与列向量生成1.行向量2.列向量总结 前言 就注意一点,下面这句话 np.array([1,2,3]) print(np.array([1,2,3]).shape) 既不是行向量,也不是列向量,你输出它的shape:(3,)。是这么个东西,你可以理解成就是一个维度是三的array。 一、行向量与列向量生成 1.行向量 # 1.产生行向量的方法 row_vector1 = np.array([1, 2, 3]).reshape(1, -1) #最常用 row_vector2 = n 阅读详情
AI摘要

本文通过实测揭示了numpy中一维向量作为行向量或列向量的灵活性,指出其根据与矩阵运算的上下文可以充当不同角色,并强调了使用二维矩阵明确向量方向的实践建议。

许久以来都有一个疑问,numpy中的一维向量究竟是行向量还是列向量呢?

今天得空,测试一下。

思路

思路很简单,利用点乘两个向量维度要对应的特性测试。

  • 1.创建一个4*2矩阵a和一个一维numpy向量b
  • 2.使a点乘b,如果a和b的点乘np.dot(a,b)不报错,就说明一维向量b为2*1的列向量。如果报错,说明b肯定不是列向量。
  • 3.如果2不报错,将b转置,再使a点乘b,如果a和b的点乘np.dot(a,b)还不报错,就说明一维向量b既可以当做列向量也可以当做行向量。

代码测试 

思路中的第1和第2步测试代码如下:

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))

输出:

 

很好,我们现在已经确定,一维向量b可以作为列向量与矩阵a相乘。

接着测试思路中的第3步,将b也做一下转置,看看a和b的点乘会不会出现问题,代码如下:

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))

输出:

 amazing,它居然也可以进行点乘,这就说明:numpy中的一维向量既可以作为行向量,也可以作为列向量存在。

结论

为了验证我的思路是否准确,我查阅了网上其他很多人的说法,和我的理解综合一下,总结下来,可以得到如下结论:

  1. 一维数组的转置仍是自己本身,这点根据上述实验的一维向量b的shape就能看出来,b.T(转置后)维度不变。
  2. 对于numpy中的一维向量b,可以认为它既不是行向量也不是列向量,它只是一个长度为2的一维向量。但是根据我的实验,我认为你也可以把他理解为它既可以做行向量同时也能做列向量,具体是行向量还是列向量根据与他进行点乘的矩阵而定。
  3. 在上述实验中可以得到一维向量既可以做行向量也可以做列向量,那对于任意一个给定的一维向量,我们就无法确定他到底是行向量还是列向量,为了防止这种尴尬的境地,习惯上用二维矩阵而不是一维矩阵来表示行向量和列向量,因为二维必定能够确定他是行向量还是列向量。

对于3,见下例:

b = np.array([[2,3]]) #行向量
c = np.array([[2],[3]]) #列向量
print(b)
print(c)
print(b.shape)
print(c.shape)

输出: 

这就是本文全部内容了,对向量在计算机中的表示形式又多了一点理解,针不搓~     (✪ω✪)

 

深度学习基础数据结构之张量:从一维到多维 张量是一个多维数据容器,可以用来表示各种数据类型,如数值、图像、音频、文本等。本文将介绍一维、二维、三维和四维张量的形象展示、应用以及对学习理解的作用。 阅读详情

相关推荐

图解Python numpy基本操作

Numpy是python的一个非常基础且通用的库,基本上常见的库pandas,opencv,pytorch,TensorFlow等都会用到。 Numpy的核心就是n维array,这篇文章将介绍一维,二维和多维array。 Numpy与List的异同点 他俩非常相似,同样都是容器,都能快速的取值的修改值,但是插入和删除会慢一点。 Numpy的优点 更紧凑,特别是多维数据 当数据可以向量化的时候比list更快 通常是同质化的,数据相同时处理更快,比如都是浮点型或者整数型 向量 Vector

m0_64355682的博客 869

向量空间

《目录》 包含向量 向量的“运动”依然在空间中 特性的向量空间 子空间 基底 张成空间 向量我们都很清楚,其实空间不太明白。 小说里的空间,大概是上图这样。 包含各种物质,比如星体、生物、能...

Debroon 1692

python中numpy广播功能(broadcasting)的一些注意事项

Python的特性允许你使用广播(broadcasting)功能,这是Python的numpy程序语言库中最灵活的地方。而我认为这是程序语言的优点,也是缺点。优点的原因在于它们创造出语言的表达性,Python语言巨大的灵活性使得你仅仅通过一行代码就能做很多事情。但是这也是缺点,由于广播巨大的灵活性,有时候你对于广播的特点以及广播的工作原理这些细节不熟悉的话,你可能会产生很细微或者看起来很奇怪的bu...

angciyu的博客 2170

【Python】深入理解NumPy数组中的一维向量

Numpy中的数组shape为(m,)说明它是一个一维数组,或者说是一个向量所以说,无须纠结得到的一维数组是行向量还是列向量,或者说一维数组在用户看来就没有行列之分,其行列的不同在Python计算时会自动进行处理。

weixin_44943389的博客 2107

Cadence元件库介绍

Cadence安装完之后,在安装目录下,会有默认自带的一些常用元件库。例如,我的Candece安装目录为: D:\Cadence\Cadence_SPB_17.2-2016 元件库所在目录为: D:\Cadence\Cadence_SPB_17.2-2016\tools\capture\library 各个元件库对应的内容如下: AMPLIFIER.OLB 共 182 个零件,存放模拟放大器 IC,如 CA3280,TL027C,EL4093 等。 ARITHMETIC.OLB 共 182 个零件,存放

年少时的棉花糖 1万+

Python对接海康威视机器视觉工业相机

工业相机只允许单条连接,也就是说MVS如果连接了相机,python代码就无法获取数据,此时必须。相机工具类(读者直接复制)HKCamera_class.py。博主这里出现了一个警告:获取不到相机参数。四、使用Pycharm打开Python代码示例文件夹。三、找到MVS示例代码(代码在MVS的安装位置)二、解压并安装MVS客户端。一、下载MVS客户端。安装一下opencv。

Good Luck 2万+

深度学习入门 - np.dot,np.multiply,星号(*)之间的关系

文章目录一.相关概念1.1 一维数组1.2 行向量1.3 列向量1.4 矩阵二. 一维数组计算2.1 计算元素积(*)2.2 计算内积(np.dot)2.3 multiply进行计算三.行向量,列向量的计算3.1 计算元素积(*)3.2 计算内积(np.dot)3.3 multiply进行计算四. 矩阵的计算4.1 计算元素积(*)4.2 计算内积(np.dot)4.3 multiply进行计算五. 总结 一.相关概念 1.1 一维数组 一维数组在python中是用 list 存储。用numpy创建一个一维

Hhjnv的博客 1035

Python + NX二次开发,如何配置Python的第三方库(包)?

地球人都知道python有强大的第三方库,可以各类骚操作,包括但不限于人工智能模块。在使用Python进行NX二次开发时,如果能够用得上这些第三方包,那将大大提高效率。本文详述了如何配置,实践证明:可行!

温良 1267

Numpy中的行向量和列向量

列向量 import numpy as np a=np.array([1,2,3]) print(a,a.shape) 结果: [1 2 3] (3,) 行向量 import numpy as np b=np.array([1,2,3]).reshape((1,-1)) print(b,b.shape) 结果: [[1 2 3]] (1, 3) 总结 形如np.arra...

Suprecat的博客 5万+

汇川PLC用户程序结构详解:如何像搭积木一样配置多任务?附EtherCAT最佳实践

本文深入解析汇川PLC用户程序结构,阐述如何像搭积木一样,通过POU、FB、FC等模块化组件高效配置多任务。文章重点结合EtherCAT通讯场景,分享了任务周期、优先级设置的最佳实践与关键避坑指南,帮助工程师构建稳定、高效的运动控制系统。

weixin_29184075的博客 538

操作不能完成 (错误 0x00000709) 共享打印机无法连接解决办法

环境:windows Server 2012 + Win10 客户端 问题:使用计算机名和IP地址可以正常连接打印机,但是使用另外的A记录或CN记录无法连接,报此错误 原因:这是打印服务DNS解析的问题 故障补充:假设你的服务器电脑名称叫print01,但是你又建了一条A记录或者CNname 叫PR01,就会发现使用额外的A记录或CN记录就无法连接 故障截图: 操作不能完成 (错误...

瑞哥的博客 3万+

python Numpy 的一维数组 1D array 既是行向量也是列向量,矩阵相乘符号@

我发现 Numpy 中的一维数组既可以是行向量也可以是列向量: import numpy as np a = np.array([1, 2, 3, 4]) In [18]: a.shape (4,) IPdb [19]: a.T.shape (4,) 可以发现,一维数组的转置就是它自身。 若在定义数组时,里面有两个中括号,就是一个行向量了。 b = np.array([[1, 2, 3 ,4]]) In [24]: b.shape (1, 4) 但若 numpy 的二维数组与一维数组做矩阵乘法,一维

天天向上的专栏 5772

【问题解决】解决 Python `PermissionError` 权限不足:文件/进程/端口全场景修复

本文总结了Python程序中常见的权限问题及解决方案,包括文件、进程和端口权限错误。文件权限问题通常由文件占用、权限不足或路径错误引起;进程问题多因权限不足或系统限制;端口问题则与端口占用、防火墙或特权端口相关。解决方案提供了详细的代码实现:文件权限管理器类(FilePermissionManager)包含检查权限(check_permission)、修复权限(fix_permission)、安全写入(safe_write)和安全删除(safe_delete)等方法,通过异常处理和临时文件等技术确保操作安全

博客 358

【菜鸟学习】Numpy中的一维数组到底是行向量or列向量?

学习矩阵*向量、向量*矩阵的时候没有明白这个一维数组到底是行向量还是列向量。

请多多指教 1021

【ArcGIS Pro微课1000例】0073:ArcGIS Pro3.5.2学习版下载及安装教程

ArcGIS Pro 3.5.2安装教程摘要:系统需Windows10及以上,8GB内存(推荐32GB)。安装步骤:1)安装.NET 8.0运行环境;2)执行主程序安装包,按向导完成基础安装;3)安装升级补丁;4)替换AfCore.dll文件并导入注册表。注意安装后删除临时文件节省空间。软件下载地址包含在百度网盘链接。安装过程需依次完成环境配置、主程序安装、补丁更新及破解步骤。

智慧空间实验室 1774

基于STM32、HAL库的WF162A 11BA T&R气压传感器 驱动程序设计

/ 转换为7位地址。* @param temperature: 存储读取到的温度值(°C)* @param temperature: 存储读取到的温度值(°C)* @param pressure: 存储读取到的压力值(bar)* @param pressure: 存储读取到的压力值(bar)* @param range: 压力范围(bar)

corlin6688的博客 361

Tensor 数组、列向量、行向量

学习神经网络的时候经常被一个概念混淆,今天终于算是进一步理解。记录一下。 无论是在python里的numpy,还是各种框架里的tensor, 数组就是一个数组而已,不等同于行向量或者列向量。 但是它有转化成行/列向量的潜质(通过特定函数如unsqueeze增加维度)。 举个例子 x1 = torch.Tensor([1, 2, 3, 4, 5]) x2 = torch.unsqueeze(x1, dim=1) # 打印x1,x2的size print(x1.size()) # torch.Size([5]

liuwp5的博客 4379

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

python 把行向量转为列向量

python相关学习资料:https://edu.51cto.com/video/1158.htmlhttps://edu.51cto.com/video/3502.htmlhttps://edu.51cto.com/video/4102.htmlPython中将行向量转换为列向量的指南 作为一名经验丰富的开发者,我...

weixin_37086506的博客 846

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

07-行向量列向量_向量的运算 加法,数乘,减法,转置

07-行向量列向量_向量的运算 加法,数乘,减法,转置

d8958的博客 1万+

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

一维数组、行向量、列向量的区别

注意三者的区别,在构建神经网络时候可以避免错误 import numpy as np C = np.random.randn(5) #产生随机的一维数组 print(C) ''' out: [ -5.65042297e-01 -5.48341047e-01 4.15160628e-04 -3.24193205e-02 -3.01925976e-01] ''' D = np....

qq_36090423的博客 7567

2.16 关于 Python Numpy 的说明-深度学习-Stanford吴恩达教授

关于 Python Numpy 的说明 (A Note on Python/Numpy Vectors) 课程PPT

赵继超的笔记 4509

python矩阵点乘和叉乘_Numpy 中的乘法

0 一维 array 对象np中的一维向量有个特殊的用法,即将行或列设为 None,来进行转换。a = np.array(range(5)) # np.arange(5)a.shapeOut: (5,) # 实际是行向量,注意表示方式的不同。a[None,:].shapeOut: (1,5) # 1 x 5 行向量a[:,None].shapeOut: (5,1) # 5 x 1 列向量进一步理解...

weixin_39571403的博客 3577

numpy中一维数组的行为

对于numpy.dot(): 一维数组置于矩阵乘法的左部,被视为一个行向量; 一维数组置于矩阵乘法的右部,被视为一个列向量; 矩阵乘法运算结束得到的向量仍是一维数组。 原因:numpy 中的 broadcasting(广播)机制 【例1】一维数组置于矩阵乘法的右部,因为最常见,所以放在第一个来举例 import numpy as np a = np.random.randint(0, ...

夏天了啊的专栏 1078

numpy中一个列向量乘以一个行向量为什么是一个数

平时在学习使用numpy库时,会遇到一种情况,假如说我想计算一个列向量乘以一个行向量的结果,我们的思路大概是这样: 首先创建一个数组,里面包含3个数字,查看一下数据和数据的形状: 一个列向量乘以一个行向量,常规思路是np.dot(a.T,a),就是a和它的转置相乘,先看一下a.T长啥样: 这里发现a和a.T形状竟然一样,都是(3,) 看一下计算结果: 本来以为是一个3*3的矩阵,结果是一个数...

weixin_44976373的博客 6266

关于一维数组是行向量还是列向量,numpy dot用法

可以说一维数组具有行列结构,其中行数为 1,列数为数组的长度。但在通常情况下,我们更倾向于将其视为单个维度的数组。在后期神经网络的学习中np.a.shape()即数组的维度数很重要,我们甚至不需要去研究数组的具体形状,但对应维度数必须相同。np.dot一般计算矩阵的乘法,但是在np.dot(a,b)a与b两个都是一维向量时,是计算向量的内积。得到结果是[4,],开始以为一维数组是行向量,那么输出结果为什么不是[,4]。一维数组没有明确的行列概念,但仍然可以将其视为拥有一行和。

loyaltyck的博客 852

Numpy维度总结(维度理解、一维二维初始化、高维向低维的转化)

Numpy维度总结。学机器学习时,numpy的维度问题始终没搞清楚,今天总结了下。提示:以下是本篇文章正文内容,下面案例可供参考。

qq_40967086的博客 5679
上一篇: 【各学校通用】5分钟刷完天津科技大学雨课堂视频
下一篇: 【思特奇杯·云上蓝桥-算法集训营】第1周
小小的香辛料
小小的香辛料 领域专家: 算法与数据结构技术领域 领域专家: 算法与数据结构技术领域
博客等级 码龄9年 1万+粉丝 385原创
评论 8
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小小的香辛料

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值