numpy中的keepdims参数

news2024/11/16 7:55:03

numpy.mean,sum,max,min等函数中都有keepdims这个参数,这个参数的作用:

当 keepidms=True,保持其二维或者三维的特性,(结果保持其原来维数)
默认为 False,不保持其二维或者三维的特性.(结果不保持其原来维数)

假设我们有一个二维数组A,其中A的形状为(3,2),我们想要求A的所有元素之和。我们可以使用Numpy的sum()方法来实现这个操作。代码如下所示:

import numpy as np

A = np.array([[1, 2], [3, 4], [5, 6]])
sum = np.sum(A)
print(sum)

这个脚本的输出结果是21。现在我们将keepdims设置为True,代码如下所示:

import numpy as np

A = np.array([[1, 2], [3, 4], [5, 6]])
sum = np.sum(A, keepdims=True)
print(sum)

这个脚本的输出结果是[[21]]。在这里,我们可以看到输入A是一个二维数组,但输出结果sum是一个一维数组。在keepdims设置为True时,np.sum()返回一个具有与输入A相同数目的轴的数组,而这些轴中有一个的长度始终为1。也就是说,在本例中,输出结果sum的形状为(1,1)。

如果我们没有设置keepdims为True,并且继续使用以上的代码,会输出一个数字21,且A的维度无法保留。因此,在需要保留输入数组维度的情况下,与保留的轴的长度为1相对应,应将keepdims设置为True。

np.mean()

np.mean()方法计算数组中元素的平均值。如果我们将keepdims设置为True,结果数组将具有与输入数组相同的形状。例如,假设我们有一个四维数组B,形状为(4,3,2,1),我们想要计算B中的元素平均值。代码如下所示:

import numpy as np

B = np.ones((4,3,2,1))
mean = np.mean(B, keepdims=True)
print(mean.shape)

这个脚本的输出结果是(1,1,1,1)。在这里,np.mean()方法使用了输入B数组并返回一个形状与B相同的数组。

np.max()

np.max()方法计算数组的最大值。如果将keepdims设置为True,则结果数组将具有与输入数组相同的形状。例如,假设我们有一个三维数组C,它的形状为(2,3,4),我们想要计算C中的最大值。代码如下所示:

import numpy as np

C = np.array([[[1,2,3,4],[5,6,7,8],[9,10,11,12]],[[13,14,15,16],[17,18,19,20],[21,22,23,24]]])
max = np.max(C, axis=(0,1), keepdims=True)
print(max.shape)

这个脚本的输出结果是(1,1,4)。在这里,我们可以看到输出数组使用相同的形状(2,3,4),并将轴(0,1)的最大值保留。因此,输出的结果是一个形状为(1,1,4)的数组,它具有与输入数组C第三维相同的形状。

np.std()

np.std()方法计算给定数组的标准差。如果将keepdims设置为True,则结果数组将具有与输入数组相同的形状。例如,假设我们有一个一维数组D,其形状为(6,),我们想要计算D的标准差。代码如下所示:

import numpy as np

D = np.array([1, 2, 3, 4, 5, 6])
std = np.std(D, keepdims=True)
print(std.shape)

这个脚本的输出结果是(1,)。在这里,我们可以看到输出数组使用与输入数组相同的形状,而不是标量结果。

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

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

相关文章

什么人适合学NPDP产品经理认证?

NPDP产品经理认证,最适合学的就是产品经理了,但是证书没有局限性,适用于所有与产品开发相关的行业和领域,特别是那些需要提高产品成功率和效率的团队成员。就是一句话,只要你觉得有用,都可以考。 通过学习N…

k8s的入门和项目部署

1、k8s简介 1.1 k8s是什么 kubernetes,希腊文中舵手的意思,简称K8s,是Google开源的容器编排引擎。在Docker容器引擎的基础上,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能,提高了大规…

打造卓越摄影作品,尽享专业级编辑体验——DxO PhotoLab 7 for Mac

DxO PhotoLab 7 for Mac 是一款功能强大的专业照片编辑软件,为摄影爱好者和专业摄影师提供了优秀的工具和功能,让您能够轻松打造卓越的摄影作品并实现专业级的编辑效果。 DxO PhotoLab 7 提供了一套先进的图像处理算法,能够准确地还原照片的…

最近很火的AIGC人工智能之AI赋能运营(巧用ChatGPT轻松上手新媒体)

前言 「作者主页」:雪碧有白泡泡 「个人网站」:雪碧的个人网站 「推荐专栏」: ★java一站式服务 ★ ★ React从入门到精通★ ★前端炫酷代码分享 ★ ★ 从0到英雄,vue成神之路★ ★ uniapp-从构建到提升★ ★ 从0到英雄&#xff…

打造香港最安全便捷的银行,众安银行发布首份技术白皮书

作者:林海宾&李龙 作为香港金融科技的代表,香港虚拟银行通过科技驱动,为客户提供了安全、便捷、普惠的金融服务。在八间持牌的虚拟银行中,众安银行目前在用户数量、存款、资产和收入规模上均处于领先水平。最快120秒线上开户…

基于微信小程序的新闻发布平台小程序设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言系统主要功能:具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序(小蔡coding)有保障的售后福利 代码参考源码获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计…

4700 万美元损失,Xn00d 合约漏洞攻击事件分析

4700 万美元损失,Xn00d 合约漏洞攻击事件分析 基础知识 ERC777 ERC777 是 ERC20 标准的高级代币标准,要提供了一些新的功能:运营商及钩子。 运营商功能。通过此功能能够允许第三方账户代表某一合约或者地址 进行代币的发送交易钩子功能。…

怎么选择伪原创工具?伪原创工具推荐

什么是伪原创工具?伪原创工具是一种可以将已有文本进行修改、改写或重新组合,生成新的文本内容的工具。 伪原创工具的作用 节省时间和精力:手工创作内容需要耗费大量时间和精力,而伪原创工具可以在短时间内生成大量内容&#xf…

【TCP/UDP】MSS和MTU、UDP报文、TCP报文、如何实现TCP的长连接、TCP的粘包问题如何解决等重点知识汇总

目录 MSS 和 MTU UDP 和 TCP 区别及应用场景 UDP头部中有哪些信息? TCP头部中有哪些信息? TCP的长连接如何实现 TCP粘包和解决 TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输…

漏洞扫描环境:win10系统用VMware Workstation打开虚拟机若干问题

win10系统用VMware Workstation打开虚拟机若干问题 一 .VMware打开虚拟机就蓝屏重启怎么解决?一. VMware打开虚拟机就蓝屏重启怎么解决?方法一:1、同时按下CTRLSHIFTESC打开任务管理器功能,之后依次点击-详细信息-性能后出现下列界…

制作PE启动盘

文章目录 ⭐️写在前面的话⭐️1、下载微PE2、格式化U盘3、安装PE到U盘4、下载镜像 ⭐️写在前面的话⭐️ 📒博客主页: 程序员好冰 🎉欢迎 【点赞👍 关注🔎 收藏⭐️ 留言📝】 📌本文由 程序员好…

二维码智慧门牌管理系统引领未来

文章目录 前言一、数据安全性与保密性二、跨网络交互与灵活部署三、系统的优势 前言 在科技飞速发展的时代,传统门牌管理系统逐渐无法满足现代社会的需求。为了解决这一问题,一款基于二维码智慧门牌的管理系统应运而生。这款系统不仅运用了先进的科技力…

java常用API之Object

Objct toString() package myObjct;public class myObjct {public static void main(String[] args) {Object onew Object();System.out.println(o.toString());//打印结果java.lang.Object27f674d} }java.lang.Object27f674d后面的27f674d是地址值 package myObjct;import ja…

港联证券:“你我同心 反诈同行”

9月26日,在国家金融监督管理总局深圳监管局的指导下,“你我同心 反诈同行”——金融顾客权益保护教育宣传月活动暨金融青年反诈宣传自愿公益行为成功举行。本次活动将传递顾客权益保护理念与防范电信网络欺诈相结合,鼓舞金融青年聚集人民大众…

力扣:111. 二叉树的最小深度(Python3)

题目: 给定一个二叉树,找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 说明:叶子节点是指没有子节点的节点。 来源:力扣(LeetCode) 链接:力扣(LeetCod…

CentOS密码重置

背景: 我有一个CentOS虚拟机,但是密码忘记了,偶尔记起可以重置密码,于是今天尝试记录一下,又因为我最近记性比较差,所以必须要记录一下。 过程: 1、在引导菜单界面(grub&#xff…

vscode设置vue3用户代码片段

打开vscode,点击设置选中用户代码片段: 前面我尝试创建vv的文件当做vue3模板代码文件,上面可以看见,但是忽略了一点: 创建用户代码片段的文件必须是json文件才可以使用,不然不可以使用 发现来源是此篇文章:如何解决Vue3没有代码提示问题?_vscode vue3代码提示_寻梦…

Nmap使用教程图文教程(超详细)

Nmap使用教程 一、端口扫描1. 指定端口2. 指定扫描方式2.1 TCP全连接扫描2.2 SYN半链接扫描2.3 隐秘扫描 二、主机探测三、服务识别四、系统识别五、扫描结果导出 kali的命令行中可以直接使用 nmap 命令,打开一个「终端」,输入 nmap 后回车,可…

K8s架构简述

以部署一个nginx服务说明kubernetes系统各个组件调用关系: 一旦kubernetes环境启动之后,master和node都会将自身的信息存储到etcd数据库中 一个nginx服务的安装请求会首先被发送到master节点的apiServer组件 apiServer组件会调用scheduler组件来决定到底…