numpy——索引切片

news2024/11/30 10:41:42

一、索引和切片

import numpy as np

x = np.arange(48).reshape(6, 8)
print(x)

# 选取第二行
print(x[1]) #从0开始,取得第2行

# 选取第二行, 第二列
print(x[1][1])

# 选取第三行到最后一行, 第一列到最后一列
print(x[2:,2:])

# 花式索引 (1, 1) 和 (4, 4)
print("\n\n\n",x[[1, 4], [1, 4]])

# np.ix_(本质上是笛卡尔积) (重点!!!)
# 假设集合A={a, b},集合B={0, 1, 2},
# 则两个集合的笛卡尔积为{(a, 0), (a, 1), (a, 2), (b, 0), (b, 1), (b, 2)}。
# (1, 1) (1,4)和 (4,1),(4, 4)

print("\n\n\n",x[np.ix_([1, 4], [1, 4])])

二、布尔索引

import numpy as np

x = np.arange(48).reshape(6, 8)
print(x)

print(x > 5)
# # 可以使用布尔类型作为索引
print(x[x > 5])
print(x[(x > 5) & (x < 17)])
#
# 空与非空
print(np.isnan(x))

print(x[~np.isnan(x)]) #~表示非

三、基本索引

import numpy as np


#1.单个元素:使用逗号分隔的索引来访问单个元素。
array = np.array([[1, 2, 3], [4, 5, 6]])
print(array[0, 2])  # 输出第一个元素的第三个值,即 3

#2.行切片:使用冒号 : 来选择行的切片。
print(array[0, :])  # 输出第一行的所有元素
print(array[1, :])  # 输出第二行的所有元素

#3.列切片:同样使用冒号 : 来选择列的切片。
print(array[:, 0])  # 输出第一列的所有元素
print(array[:, 2])  # 输出第三列的所有元素

#4.步长切片——步长:在切片时,可以指定步长
print(array[::2, ::2])  # 从第一行开始,每隔一行选择一行,从第一列开始,每隔一列选择一列

#5.布尔数组:可以使用布尔数组来索引,数组中 True 的位置将被选中。
bool_array = array > 2  # 创建一个布尔数组,其中大于2的元素为True
print(array[bool_array])  # 选择所有大于2的元素

#6.多个索引:可以使用多个索引来选择数组的子集。
rows = [0, 1]  # 选择第一行和第二行
cols = [1, 2]  # 选择第二列和第三列
print(array[rows, cols])  # 输出选定的子集

#7.添加新轴:使用 None 或 np.newaxis 可以在指定位置添加新的轴。
print(array[:, None])  # 在列后面添加一个新轴,将数组变为 (2, 3, 1) 的形状

注意事项

  • 在进行切片操作时,返回的是原始数组的视图(view),而不是副本(copy)。这意味着,如果你修改了视图,原始数组也会被修改。
  • 使用 -1 可以表示最后一个元素或最后一个轴。

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

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

相关文章

MPP音视频总结

基础篇 1.常用图像格式介绍 常用图像像素格式 RGB 和 YUV。 1.1RGB RGB分类通常指的是将图像或颜色按照RGB&#xff08;红、绿、蓝&#xff09;颜色空间进行分组或分类。RGB图像格式通常包括RGB24&#xff08;RGB888&#xff09;、RGB32、RGBA、RGB565等。 RGB24是一种常用…

【CSS】入门详解

你是否曾经浏览网页时&#xff0c;被一些网站精美的布局、炫酷的动画和赏心悦目的色彩所吸引&#xff1f;这背后神奇的力量就是 CSS&#xff08;层叠样式表&#xff09;。CSS 就像网页的化妆师&#xff0c;它负责网页的样式和布局&#xff0c;让原本枯燥的 HTML 结构变得生动有…

AttributeError: module ‘pandas‘ has no attribute ‘datetime‘

今天在进行时间序列问题处理时候&#xff0c;发生如下报错&#xff1a; AttributeError: module pandas has no attribute datetime 因为在新的pands版本中pandas已不再支持datetime模块。 from datetime import datetime 需要导入datetime库。 原代码&#xff1a; impor…

2025选题|基于Hadoop的物品租赁系统的设计与实现

作者简介&#xff1a;Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、多年校企合作经验&#xff0c;被多个学校常年聘为校外企业导师&#xff0c;指导学生毕业设计并参与学生毕业答辩指导&#xff0c;…

《虚拟现实的边界:探索虚拟世界的未来可能》

内容概要 在虚拟现实&#xff08;VR&#xff09;技术的浪潮中&#xff0c;我们见证了其从实验室的奇想逐渐走向日常生活的非凡旅程。技术发展的背后是不断突破的创新&#xff0c;早期的设备虽然笨重&#xff0c;但如今却趋向精致、轻巧&#xff0c;用户体验显著提升。想象一下…

【MySQL】视图特性 用户管理

> 作者&#xff1a;დ旧言~ > 座右铭&#xff1a;松树千年终是朽&#xff0c;槿花一日自为荣。 > 目标&#xff1a;了解什么是视图&#xff0c;我们又该如何管理用户。 > 毒鸡汤&#xff1a;有些事情&#xff0c;总是不明白&#xff0c;所以我不会坚持。早安! >…

旧衣物回收小程序开发,线上线下相结合

当下&#xff0c;绿色发展是重中之重&#xff0c;旧衣回收作为一件利国利民的模式&#xff0c;在发展中深受大众欢迎。随着大众生活水平的提高&#xff0c;家中闲置的衣物逐年增加&#xff0c;这也为旧衣回收市场发展提供了广阔的发展前景&#xff0c;为入局者和创业者提供新的…

keepalived+web 实现双机热备

环境&#xff1a;利用keeplived实现web服务器的双机热备(高可用) 注意&#xff1a; (1) 利用keeplivedweb做双击热备&#xff08;高可用&#xff09;&#xff0c;最少需要两台服务器&#xff0c;可以实现多域名对应一个VIP,并且访问不同域名&#xff0c;显示不同主页&#xf…

a50股指期货是什么意思?

首先&#xff0c;股指期货&#xff0c;顾名思义&#xff0c;就是以股票指数为标的的期货合约。啥是期货呢&#xff1f;简单来说&#xff0c;就是现在约定好价格&#xff0c;将来某个时间再交易的东西。而A50股指期货&#xff0c;就是以A50指数为标的的期货合约。 A50指数&…

理解UUID 无序性对数据存储的影响

文章目录 背景问题1,移动数据问题2,频繁的页分裂背景 如果以UUID为主键,对于mysql 可能存在的问题。 问题1,移动数据 从上图来看,如果UUID是随机的话,以0012,0021 这个节点来说,如果插入的是0015,相当于要把16到21的数据向后移动一个位置,如果是自增的话,只会在尾…

HarmonyOS ArkTS与C++数据类型转换

1. HarmonyOS ArkTS与C数据类型转换 本文介绍了C与TS各自数据类型与互相之间的数据类型转换&#xff0c;在需要使用C模块时可以快速上手对各种数据类型进行转换。 1.1. 概述 HarmonyOS的主力开发语言是ArkTS&#xff0c;也提供了C语言的支持&#xff0c;对于一些能力&#xff…

Docker:容器

Docker&#xff1a;容器 容器容器命令docker psdocker createdocker startdocker rundocker logsdocker execdocker stopdocker restartdocekr rmdocker killdocker pausedocker unpausedocker commitdocker cpdocker diffdocker exportdocker importdocker renamedocker stats…

Es环境搭建 ▎kibana组件 ▎ik分词器 ▎idea继承Es ▎idea中Es操作

目录 安装Es 安装Es可视化界面(elasticsearch-head) elasticsearch-head安装: 安装可视化Kibana组件 汉化kibana ​编辑 启动服务器: 安装ik分词器插件 Idea继承Es 索引库操作 文档操作 安装Es Es下载地址: ES下载地址https://www.elastic.co/cn/downloads/elasticsea…

苏州金龙技术创新赋能旅游新质生产力

2024年10月23日&#xff0c;备受瞩目的“2024第六届旅游出行大会”在云南省丽江市正式开幕。作为客车行业新质生产力标杆客车&#xff0c;苏州金龙在大会期间现场展示了新V系V12商旅版、V11和V8E纯电车型&#xff0c;为旅游出行提供全新升级方案。 其中&#xff0c;全新15座V1…

SpringBoot3集成Swagger接口文档功能、接口排序以及如何设置接口页面的title/keyword/description?

一、SpringBoot3集成Swagger接口文档功能 在SpringBoot3 中集成 Swagger 接口文档&#xff0c;如果按照网上的很多提示&#xff0c;会有些问题。在这个过程中我就遇到报错&#xff1a; Caused by: java.lang.ClassNotFoundException: javax.servlet.http.HttpServletRequest 因…

总裁主题CeoMax-Pro主题7.6开心版

激活方式&#xff1a; 1.授权接口源码ceotheme-auth-api.zip搭建一个站点&#xff0c;绑定www.ceotheme.com域名&#xff0c;并配置任意一个域名的 SSL 证书。 2.在 hosts 中添加&#xff1a;127.0.0.1 www.ceotheme.com 3.上传class-wp-http.php到wp-includes目录&#xff…

Rust命令行,实现自动反编译Android APK包工具

Rust-CLI实现自动反编译APK Rust提供了比较好的CLI接口,可以快速的编写命令行应用, 用于日常的工具类使用。 分享一个用Rust命令行实现自动反编译Android APK包工具&#xff0c;是之前学习Rust写的一个练手小工具&#xff0c;可以快速反编译APK&#xff0c;同时也学习下用Rust…

Flutter升级与降级

升级 版本升级 // 升级到指定版本flutter upgrade 版本号// 升级到最新版本flutter upgrade 降级 1.需要先确定想要降级的版本号。 2.切换到系统安装Flutter的目录 3.在https://github.com/flutter/flutter&#xff0c;找到要回退的版本号对应的commit序号&#xff08;具…

熵与信息论

经典信息论的核心概念是香农熵。假设我们得到了一个变量X的值&#xff0c;X的香农熵量化了我们在获悉 X的值时所能得到的平均信息量&#xff1b;另一种观点是将X的看作在我们获悉的值前对其不确定程度的度量。这两种观点是互补的&#xff1b;我们既可以将看作在我们获悉X的值前…

Vue3+ts+vite自动导入vue的依赖

Vue3tsvite自动导入vue的依赖 unplugin-auto-import 主要依赖 npm i -D unplugin-auto-import// vite.config.ts import AutoImport from unplugin-auto-import/viteexport default defineConfig({plugins: [AutoImport({ imports: ["vue", "vue-router"…