NumPy进阶(二)
2. NumPy进阶(二)
2.1 Numpy数组操作
2.1.1 添加元素
numpy.append 函数在数组的末尾添加值。 追加操作会分配整个数组,并把原来的数组复制到新数组中
注意:
- 插入的维度要保证所有数组的长度是相同的
- 如果没有指定轴,数组会被扁平处理

- ndarray中 append使用方法
np.append(arr, 8) # 数组app使用方法
""" 结果
array([1, 2, 3, 4, 5, 8])
"""
arr2 = np.random.randint(0, 10, size=(4,3))
arr2
""" 结果
array([[3, 8, 3],[1, 4, 8],[6, 9, 9],[5, 5, 2]])
"""np.append(arr2, [[1,2,3]], axis=0) # 添加一行
""" 结果
array([[3, 8, 3],[1, 4, 8],[6, 9, 9],[5, 5, 2],[1, 2, 3]])
"""data = np.ones(shape=(4,1))
display(data)
""" 结果
array([[1.],[1.],[1.],[1.]])
"""display(arr2)
"""
array([[3, 8, 3],[1, 4, 8],[6, 9, 9],[5, 5, 2]])
"""
np.append(arr2, data, axis=1) # 添加一列
"""
array([[3., 8., 3., 1.],[1., 4., 8., 1.],[6., 9., 9., 1.],[5., 5., 2., 1.]])
"""
2.1.2 插入元素
numpy.insert 函数在给定索引之前,沿给定轴在输入数组中插入值
如果未提供轴,则输入数组会被展开
2.1.3 删除元素
numpy.delete 函数返回从输入数组中删除指定子数组的新数组。
如果未提供轴参数,则输入数组将展开。
2.1.4 reshape
numpy.reshape 函数可以在不改变数据的条件下修改形状,格式如下: numpy.reshape(arr, newshape, order=‘C’)
- arr:要修改形状的数组
- newshape:整数或者整数数组,新的形状应当兼容原有形状
- order:'C' -- 按行,'F' -- 按列,'A' -- 原顺序,'k' -- 元素在内存中的出现顺序。

2.1.5. 数组迭代器
numpy.ndarray.flat
for循环与 flat 对比,有下例可见多维数组使用for繁琐,flat更为简洁

2.1.6. 数组扁平处理
numpy.ndarray.flatten() 返回一份展开的数组拷贝,对拷贝所做的修改不会影响原始数组
numpy.ravel() 展平的数组元素,返回一个展开的数组引用,修改会影响原始数组。
2.1.7. 数组翻转
numpy.transpose 对换数组的维度

2.2 数学函数
2.2.1 三角函数
np.sin(), np.cos(), np.tan()
接收的参数是弧度,不是角度
1.2.2. 舍入函数
numpy.around()
a: 数组
decimals: 舍入的小数位数。 默认值为0。 如果为负,整数将四舍五入到小数点左侧的位置

2.3. 算数函数
加减乘除: add(),subtract(),multiply() 和 divide()
numpy.power() 幂运算,可以做开方运算
numpy.mode() 求余运算
np.log() 自然底数的对数 np.log2(), np.log10()
2.4. Numpy 查找和排序
2.4.1. 查找索引
numpy.argmax() 和 numpy.argmin() 分别是查找最大值索引位置, 最小值索引位置
1.4.2. 条件查找
numpy.where(condition) 函数返回输入数组中满足给定条件的元素的索引, 返回索引位置
- condition 条件 条件表达式

2.4.3. 快速排序
np.sort()与ndarray.sort()都可以,但有区别:
np.sort()不改变输入
ndarray.sort()本地处理,不占用空间,但改变输入
numpy.sort() 函数返回输入数组的排序副本
1.4.4. 索引排序
numpy.argsort() 函数返回的是数组值从小到大的索引值。

1.4.5. 部分排序
np.partition(a,k)
有的时候我们不是对全部数据感兴趣,我们可能只对最小或最大的一部分感兴趣。
当k为正时,我们想要得到最小的k个数
当k为负时,我们想要得到最大的k个数
相关文章:
NumPy进阶(二)
2. NumPy进阶(二) 2.1 Numpy数组操作 2.1.1 添加元素 numpy.append 函数在数组的末尾添加值。 追加操作会分配整个数组,并把原来的数组复制到新数组中 注意: 插入的维度要保证所有数组的长度是相同的如果没有指定轴,数组会被扁平处理 ndarr…...
计算机专业,不擅长打代码,考研该怎么选择?
考研其实和你的代码能力关系不大 所以在选学校以前可以看看有哪些学校复试是要求上机撸代码的,可能会要求比较严 初试真的不用担心代码问题,我也是基本零编程能力就开始备考考研的... 本人双非科班出身备考408成功上岸,在这里也想给想考40…...
SQL Server的详细使用教程
安装SQL Server 下载SQL Server 安装程序运行安装程序,选择"基本"安装类型在"实例配置"页面,将实例命名为"SQLServerTest"在"服务器配置"页面,选择"NT服务\系统"作为启动账户完成其他设置,然后安装SQL Server 连接SQL Serve…...
挑错罐头=“害猫”!猫咪主食罐到底应该怎么选?
猫咪罐头已经成为众多猫奴们的喂养首选。它富含水分,有助于猫咪保持良好的泌尿系统健康,尤其对于那些不太喜欢饮水的猫咪来说,罐头无疑是补充水分的理想方式。罐头的口感极佳,肉质细腻,能够激发猫咪的食欲,…...
43---SATA电路设计
视频链接 SATA硬件电路设计01_哔哩哔哩_bilibili SATA电路设计 1、硬盘分类 硬盘按照原理可以分为机械硬盘(HDD)、固态硬盘(SSD)以及混合硬盘(SSHD)三类。 1.1、机械硬盘(HDD) …...
think:该写什么样的blog
前言 好久没更新blog,简单写点东西。随着chatgpt为首的大模型兴起,发现周边的很多程序员逐步减少使用google,Stack Overflow等搜索常见的问题,csdn流量估计也会受到不小的影响。chatgpt的下限不低,从简单的语法查询到…...
【APUE】网络socket编程温度采集智能存储与上报项目技术------多路复用
作者简介: 一个平凡而乐于分享的小比特,中南民族大学通信工程专业研究生在读,研究方向无线联邦学习 擅长领域:驱动开发,嵌入式软件开发,BSP开发 作者主页:一个平凡而乐于分享的小比特的个人主页…...
GitHub 仓库 (repository) Pulse - Contributors - Network
GitHub 仓库 [repository] Pulse - Contributors - Network 1. Pulse2. Contributors3. NetworkReferences 1. Pulse 显示该仓库最近的活动信息。该仓库中的软件是无人问津,还是在火热地开发之中,从这里可以一目了然。 2. Contributors 显示对该仓库进…...
C语言题目:阶乘数列求和(函数)
题目描述 输入一个正数x和一个正整数n,求下列算式的值。要求定义两个调用函数:fact(n)计算n的阶乘;mypow(x,n)计算x的n次幂(即xn),两个函数的返回值类型是double。 x - x2/2! x3/3! ... (-1)n-1xn/n! …...
Unity与CocosCreator对比学习二
一、锚点与适配 1.在Creator中 适配通过锚点、位置和Widget达到适配目的;锚点是节点在其父节点坐标系中坐标对其点,其x,y范围在[0, 1]之间; 锚点为(0, 0)时在节点自身的左下角,节点坐标指其左下角在父节点中的坐标;锚…...
01-Git 快速入门
https://learngitbranching.js.org/?localezh_CN在线练习git 1. Git 安装好Git以后, 先检查是否已经绑定了用户名和邮箱 git config --list再检查C:\Users\xxx.ssh 下是否存在 id_rsa.pub , 存在的话复制其内容到 GitHub 的 SSH KEY 中 没有这一步, PUSH操作的时候会报错:…...
Axure RP中的相关概念及高保真原型构建方法
1 Axure RP中概念介绍 对于构建高保真原型来说,需要知道事件(Event)、Case、Action等概念。Axure RP中给出这些概念,是为了方便原型的构建,尤其是高保真原型的构建。 事件(Event)是附着于控件…...
Ruoyi-vue-pro Vue + nginx 二级目录部署到云服务器
http://www.your-server.com/ 这是一级目录,由于项目多,一般会通过二级域名http://oa.your-server.com/或二级目录http://www.your-server.com/oa来发布,本篇记录一下二级目录发布。先看效果 1、router/index.js配置base export default new …...
leetcode2529--正整数和负整数的最大计数
1. 题意 给定有序数组,求其中正整数和负整数的计数最大值。 正整数和负整数的最大计数 2. 题解 2.1 遍历 直接判断 class Solution { public:int maximumCount(vector<int>& nums) {int neg 0;int pos 0;for (int num:nums) {if (!num)continue;i…...
使用YOLOv8训练自己的【目标检测】数据集
文章目录 1.收集数据集1.1 使用开源已标记数据集1.2 爬取网络图像1.3 自己拍摄数据集1.4 使用数据增强生成数据集1.5 使用算法合成图像 2.标注数据集2.1确认标注格式2.2 开始标注 3.划分数据集4.配置训练环境4.1获取代码4.2安装环境 5.训练模型5.1新建一个数据集yaml文件5.2预测…...
rust学习(recursive mutex 实现)
问题: 编写如下代码的时候出现死锁: pub fn test_double_lock() {let t Arc::new(Mutex::new(1));let t1 t.clone();let t2 t.clone();let h std::thread::spawn(move || {println!("hello trace1");let l1 t1.lock().unwrap();println…...
DasViewer可以添加照片到里面吗?点开就可以看照片?
DasViewer主要是三维模型浏览器,二维可以添加矢量和正射影像,航片暂不支持。 DasViewer是由大势智慧自主研发的免费的实景三维模型浏览器,采用多细节层次模型逐步自适应加载技术,让用户在极低的电脑配置下,也能流畅的加载较大规模实景三维模型,提供方便…...
python蓝桥杯选数
文章目录 前言一、题意二、代码1.代码的实现2.读入数据 总结 前言 本题涉及到很多python中的知识点,比如combinations(列表的组合)应用,以及素数的判断 一、题意 已知 n 个整数 x1,x2,…,xn,以及一个整数 k(k&#x…...
联想电脑开启虚拟化失败,开启虚拟化却提示还没有开启虚拟化
安装虚拟机的时候, 电脑要开启虚拟化, Intel VT, 去BIOS开启了, 但是依然报错,说虚拟化处于禁用状态。 解决方案: 去联想官方,下载BIOS更新包,更新BIOS。 更新文档: 联…...
物联网农业四情在线监测系统
TH-Q2随着科技的飞速发展和信息化时代的来临,物联网技术在各个领域都取得了显著的应用成果。其中,物联网农业四情在线监测系统作为农业现代化的重要组成部分,正在为农业生产带来革命性的变革。 一、物联网农业四情在线监测系统的概念 物联网…...
unix/linux,sudo,其发展历程详细时间线、由来、历史背景
sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...
爬虫基础学习day2
# 爬虫设计领域 工商:企查查、天眼查短视频:抖音、快手、西瓜 ---> 飞瓜电商:京东、淘宝、聚美优品、亚马逊 ---> 分析店铺经营决策标题、排名航空:抓取所有航空公司价格 ---> 去哪儿自媒体:采集自媒体数据进…...
TJCTF 2025
还以为是天津的。这个比较容易,虽然绕了点弯,可还是把CP AK了,不过我会的别人也会,还是没啥名次。记录一下吧。 Crypto bacon-bits with open(flag.txt) as f: flag f.read().strip() with open(text.txt) as t: text t.read…...
云原生安全实战:API网关Envoy的鉴权与限流详解
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关 作为微服务架构的统一入口,负责路由转发、安全控制、流量管理等核心功能。 2. Envoy 由Lyft开源的高性能云原生…...
Java中HashMap底层原理深度解析:从数据结构到红黑树优化
一、HashMap概述与核心特性 HashMap作为Java集合框架中最常用的数据结构之一,是基于哈希表的Map接口非同步实现。它允许使用null键和null值(但只能有一个null键),并且不保证映射顺序的恒久不变。与Hashtable相比,Hash…...
本地部署drawDB结合内网穿透技术实现数据库远程管控方案
文章目录 前言1. Windows本地部署DrawDB2. 安装Cpolar内网穿透3. 实现公网访问DrawDB4. 固定DrawDB公网地址 前言 在数字化浪潮席卷全球的背景下,数据治理能力正日益成为构建现代企业核心竞争力的关键因素。无论是全球500强企业的数据中枢系统,还是初创…...
ABB馈线保护 REJ601 BD446NN1XG
配电网基本量程数字继电器 REJ601是一种专用馈线保护继电器,用于保护一次和二次配电网络中的公用事业和工业电力系统。该继电器在一个单元中提供了保护和监控功能的优化组合,具有同类产品中最佳的性能和可用性。 REJ601是一种专用馈线保护继电器…...
华硕电脑,全新的超频方式,无需进入BIOS
想要追求更佳性能释放 或探索更多可玩性的小伙伴, 可能会需要为你的电脑超频。 但我们常用的不论是BIOS里的超频, 还是Armoury Crate奥创智控中心超频, 每次调节都要重启,有点麻烦。 TurboV Core 全新的超频方案来了 4不规…...
Qt Quick Dialogs模块功能及架构
Qt Quick Dialogs 是 Qt Quick 的一个附加模块,提供了一套用于创建和使用系统对话框的 QML 类型。在 Qt 6.0 中,这个模块经过了重构和增强。 一、主要功能和特点 1. 对话框类型 Qt Quick Dialogs 在 Qt 6.0 中提供了以下标准对话框类型: …...
NoSQL——Redis配置与优化
目录 关系型&非关系型数据库 一、核心原理对比 二、核心特性对比 三、关键区别剖析 四、典型产品示例 总结 Redis Redis核心原理 核心特性 技术意义 配置文件解析 1. 基础配置 2. 持久化配置 3. 内存管理 4. 高可用配置 5. 性能调优 6.…...



