python 矩阵元素相加_Numpy中元素级运算

标量与矩阵的运算:

加法:

values = [1,2,3,4,5]

values = np.array(values) + 5

#现在 values 是包含 [6,7,8,9,10] 的一个 ndarray

乘法:

x = np.multiply(some_array, 5)

x = some_array * 5

矩阵与矩阵的运算:

加法:对应元素相加,但形状必须相同,形状不同则会报错

a = np.array([[1,3],[5,7]])

# array([[1, 3],

# [5, 7]])

b = np.array([[2,4],[6,8]])

# array([[2, 4],

# [6, 8]])

a + b

# array([[ 3, 7],

# [11, 15]])

乘法(叉乘):对应元素相乘

如上a *b 或者 np.multiply(a,b)都得到

# [[ 2 12]

# [30 56]]

乘法(点乘):大多数情况下所说的矩阵乘法都是指这个点乘

可以是不同形状的矩阵相乘,但必须满足“内侧相同”原则

m行n列矩阵乘以n行p列矩阵,等于m行p列的矩阵

如:

a = np.array([[1,2,3,4],[5,6,7,8]])

a

# 显示以下结果:

# array([[1, 2, 3, 4],

# [5, 6, 7, 8]])

a.shape

# 显示以下结果:

# (2, 4)

b = np.array([[1,2,3],[4,5,6],[7,8,9],[10,11,12]])

b

# 显示以下结果:

# array([[ 1, 2, 3],

# [ 4, 5, 6],

# [ 7, 8, 9],

# [10, 11, 12]])

b.shape

# 显示以下结果:

# (4, 3)

c = np.matmul(a, b)

c

# 显示以下结果:

# array([[ 70, 80, 90],

# [158, 184, 210]])

c.shape

# 显示以下结果:

# (2, 3)

如果你的矩阵具有不兼容的形状,则会出现以下错误:

np.matmul(b, a)

# 显示以下错误:

# ValueError: shapes (4,3) and (2,4) not aligned: 3 (dim 1) != 2 (dim 0)

有时候,在你以为要用 matmul 函数的地方,你可能会看到 NumPy 的 如果矩阵是二维的,那么 dot 和 matmul 函数的结果是相同的

a = np.array([[1,2],[3,4]])

a

# 显示以下结果:

# array([[1, 2],

# [3, 4]])

np.dot(a,a)

# 显示以下结果:

# array([[ 7, 10],

# [15, 22]])

a.dot(a) # you can call你可以直接对 `ndarray` 调用 `dot`

# 显示以下结果:

# array([[ 7, 10],

# [15, 22]])

np.matmul(a,a)

# array([[ 7, 10],

# [15, 22]])

虽然这两个函数对于二维数据返回相同的结果,但在用于其他数据形状时,应该谨慎选择

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/370471.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

排序算法——桶排序

把数据放进若干个桶,然后在桶里用其他排序,近乎分治思想。从数值的低位到高位依次排序,有几位就排序几次。例如二位数就排两次,三位数就排三次,依次按照个十百...的顺序来排序。 第一次排序:50 12 …

原型设计模式:创建另一个小车

创建对象确实是一个耗时的过程,也是一件昂贵的事情。 因此,我们现在正努力节省时间和金钱。 我们该怎么做? 克隆奇迹多莉 有人记得多莉吗? 是的,是绵羊,是第一个被克隆的哺乳动物。 好吧,我不想…

java实现周期任务_java定时任务的实现方式

本文列举常见的java定时任务实现方式,并做一定比较。1. 循环内部sleep实现周期执行创建一个thread,run() while循环里sleep()来实现周期性执行; 简单粗暴,作为一个初学者很容易想到。public class Task1 {public static void main(String[] a…

磁盘镜像工具Guymager

磁盘镜像工具Guymager在数字取证中,经常需要对磁盘制作镜像,以便于后期分析。Kali Linux提供一款轻量级的磁盘镜像工具Guymager。该工具采用图形界面化方式,提供磁盘镜像和磁盘克隆功能。它不仅生成dd的镜像,还能生成EWF和AFF镜像…

python怎么写代码求年华收益率_如何计算年化收益率?

关于投资年化收益率的计算,三思君觉得主要有三种,分别是一次性投资的收益率计算、定期定额的收益率计算、不定期不定额的收益率计算。1.一次性投资的收益率计算对于一次性投资的收益率,相信大家都会计算。比如,小李同学去年买了一…

HTTPS协议在Tomcat中启用的配置

本文将讲解HTTPS协议在Tomcat中启用是如何配置的。 概念简介 Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选。 HTTP 超文本…

CSS3实现烟花特效 --web前端

烟花特效&#xff0c;比较简单&#xff0c;直接贴代码了……<!DOCTYPE html><html lang"en"><head> <meta charset"UTF-8"> <title>css3实现烟花特效</title> <style> * { margin: 0; padding: 0; } html{ widt…

虚拟机 java 开发_深入浅出 Java 虚拟机 · 通往高级 Java 开发的必经之路

第一章 JVM 内存模型Java 虚拟机(Java Virtual MachineJVM)的内存空间分为五个部分&#xff0c;分别是&#xff1a;程序计数器Java 虚拟机栈本地方法栈堆方法区。下面对这五个区域展开深入的介绍。1.1 程序计数器1.1.1 什么是程序计数器&#xff1f;程序计数器是一块较小的内存…

java.lang.ClassNotFoundException:如何解决

本文适用于当前面临java.lang.ClassNotFoundException挑战的Java初学者。 它将为您提供此常见Java异常的概述&#xff0c;这是一个示例Java程序&#xff0c;可支持您的学习过程和解决策略。 如果您对与更高级的类加载器相关的问题感兴趣&#xff0c;我建议您复习有关java.lang…

iOS10 App跳转到系统设置

实现类似万能钥匙中点击一个Wi-Fi跳转到系统Wi-Fi设置界面的功能。 NSString * urlString "App-Prefs:rootWIFI";if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:urlString]]) {if ([[UIDevice currentDevice].systemVersion doubleValue…

python生成器 图片分类_python批量处理图片图片Python迭代器和生成器介绍

Python迭代器和生成器介绍迭代器迭代器是一个实现了迭代器协议的对象&#xff0c;Python中的迭代器协议就是有next方法的对象会前进到下一结果&#xff0c;而在一系列结果的末尾是&#xff0c;则会引发StopIteration。在for循环中&#xff0c;Python将自动调用工厂函数iter()获…

Java-IO流之BufferedReader 和BufferedWriter的使用和原理

BufferedReader和BufferedWriter出现的目的是为了对FileReader以及FileWriter的读写操作进行增强&#xff0c;而怎么增强呢&#xff0c;原理类似于使用StringBuilder&#xff0c;是把数据先放入他们的一个char数组中&#xff0c;然后再操作char数组。 使用缓冲区的字符流是使用…

小程序实践(三):九宫格实现及item跳转

效果图&#xff1a; 实现效果图红色线包含部分的九宫格效果&#xff0c;并附带item点击时间。 ------------------------------------------------------------------------------------------------------ 具体实现&#xff1a; 1、首先添加图片资源文件 在项目根目录新建一个…

用JavaFX编写图块引擎

随着JavaFX嵌入式版本的问世&#xff0c;我们的框架对于游戏开发变得越来越有趣&#xff0c;因为我们现在可以瞄准平板电脑和智能手机等小型消费类设备。 因此&#xff0c;我决定对JavaFX进行更多的游戏编写实验。 这次&#xff0c;我想使用Canvas对渲染进行更多控制&#xff0…

python命令行运行模式_[Python] 命令行模式阅读博客园的博文

1 #-*- coding:UTF-8 -*-2 importrequests3 from lxml importetree4 importsys5 importio6 importos789 sys.stdout io.TextIOWrapper(sys.stdout.buffer, encodinggb18030)101112 classCnBlogs:13 """"14 Auth&#xff1a;reader15 发表地址&#xff1a;…

HTML5--应用网页模板

因为刚开始写博客,只想着把知识点记录在这,也想给你们一些参考,在布局上有些没有思考太多;回过头来看,实在是不忍直视,对不住之前阅读的100 ,既然昨天的事无法挽回,那就从现在开始从新整改吧!也希望大家看了,能对你们有所帮助 1.先给大家看看效果图,好让大家有点兴趣 2.大家再来…

企业集成模式简介

在此博客文章中&#xff0c;我们将介绍一些企业集成模式。 这些是旨在解决集成挑战的已知设计模式。 阅读此书后&#xff0c;您将可以设计集成解决方案。 EIP&#xff08;简而言之&#xff09;是已知的设计模式&#xff0c;可为应用程序集成过程中遇到的问题/问题提供解决方案…

手把手教你Chrome浏览器安装Postman(含下载云盘链接)【转载】

转载自&#xff1a;http://www.ljwit.com/archives/php/278.html 说明&#xff1a; Postman不多介绍&#xff0c;是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。本文主要介绍下安装过程。 本文使用的是解压文件直接进行安装。是比较快速有效的安装方式&#xff0c;…

C语言博客作业--数据类型

题目1&#xff1a;7-4 打印菱形图案 1. 本题PTA提交列表 2. 设计思路 1.定义变量i,j,k,n;且声明i为要打印的行数&#xff0c;j是控制输出打印空格和星星&#xff0c;n是菱形为菱形的高 2.输入n 3.i1&#xff0c;j1 4.先打印上半部分&#xff0c;第一行到n/21行&#xff0c;输出…

信息隐藏将txt文件合并到jpg文件中_使用Kali Linux在图像内隐藏机密消息—可在任何Linux发行版使用

欢迎回到“Esn技术社区”&#xff01;今天&#xff0c;我们将演示如何使用Steghide(一种可在Kali Linux上使用的流行隐写工具)在图像内隐藏消息。在计算机科学中&#xff0c;将信息隐藏在文件内(例如图像&#xff0c;文档&#xff0c;程序&#xff0c;有用数据&#xff0c;消息…