NumPy的介绍
第四章:NumPy 基础
一 NumPy是什么
NumPy = 数字集装箱 + 超级计算器。
NumPy 就像一台超级计算器,但它的计算对象不是简单的数字,而是成百上千个数字组成的「数字表格」。
假设你要统计全班 50 个同学的身高、体重、成绩,手动计算每个人的总分、平均分会很麻烦。
如果把这些数据整理成一个「表格」,交给 NumPy,它就能一键算出全班的平均身高、最高成绩、体重标准差,还能快速排序、筛选数据。
二 为什么有NumPy
速度快:处理 100 万个数字,NumPy 比普通 Python 快 100 倍。
操作方便:加减乘除、统计计算全都有现成「按钮」(函数)。
省内存:用「集装箱」存储,比「箩筐」更节省空间。
没有 NumPy 时,Python 处理大量数字就像用手工整理仓库:比如要计算 1000 个商品的价格总和,Python 需要用一个「大箩筐」(列表)一个个装起来,再慢慢数;NumPy 则像一台自动叉车,直接把所有商品打包成「集装箱」(数组),用机器快速完成搬运和计算。
三 如何使用NumPy
安装
就像给手机装一个计算器 App(在电脑输入 pip install numpy)。
导入
每次用计算器前要打开它(在代码里写 import numpy as np)。
创建数组
把数据装进「集装箱」。
使用功能
按「按钮」计算结果(使用函数)。
四 NumPy和其他的联系
NumPy 是 Python 数据科学领域的地基,其他工具(如 Pandas、Matplotlib)都建立在它之上。
1.NumPy 和 Pandas 的关系
NumPy
只能存储统一类型的数据(比如全是数字、或全是文字)。
能快速做批量计算(比如对100万个数统一+1),但无法处理复杂结构。
NumPy 是「集装箱」。
标准化:所有货物必须统一类型(比如只能装苹果或只能装衣服)。
快速装卸:用机械批量搬运,但无法直接分类、统计货物详情。能快速做批量计算(比如对100万个数统一+1),但无法处理复杂结构。
Pandas
它的核心数据结构是DataFrame(类似 Excel 表格),允许不同列有不同的数据类型(比如一列是文字,一列是数字,一列是日期)。
支持按标签筛选、分组统计、合并数据等复杂操作。
但底层计算(比如求和、平均值)依然依赖 NumPy 的集装箱。
Pandas 是「智能仓库管理系统」。
仓库管理系统的特点:
混合存储:可以同时存放苹果、衣服、电子产品。
智能标签:给货物贴分类标签(比如产地、日期、价格)。
高级功能:自动统计库存、筛选过期商品、生成报表。
两者关系
NumPy 负责:
快速搬运成箱的货物(比如计算100箱苹果的总重量)。
批量修改价格(比如所有苹果价格打8折)。
Pandas 负责:
记录每件商品的详细信息(名称、价格、保质期)。
回答复杂问题(比如“哪些酸奶下周过期?”、“进口食品的平均利润是多少?”)。
生成可视化报表(库存趋势图、热销商品排名)。
2.NumPy 和 Matplotlib 的关系
NumPy 提供数据,Matplotlib 是「画图工具」:
比如用 NumPy 生成 1000 个随机数,再用 Matplotlib 画成折线图。
3.NumPy 和机器学习的关系
训练 AI 模型就像教机器人做数学题,NumPy 负责快速处理成千上万的练习题(数据)。
相关文章:
NumPy的介绍
第四章:NumPy 基础 一 NumPy是什么 NumPy 数字集装箱 超级计算器。 NumPy 就像一台超级计算器,但它的计算对象不是简单的数字,而是成百上千个数字组成的「数字表格」。 假设你要统计全班 50 个同学的身高、体重、成绩,手动计算…...
【Python】基础语法三
> 作者:დ旧言~ > 座右铭:松树千年终是朽,槿花一日自为荣。 > 目标:了解Python的函数、列表和数组。 > 毒鸡汤:有些事情,总是不明白,所以我不会坚持。早安! > 专栏选自ÿ…...
使用 Spring Boot 和 Keycloak 的 OAuth2 快速指南
1. 概述 本教程是关于使用 Spring Boot 和 Keycloak 通过 OAuth2 配置后端的。 我们将使用 Keycloak 作为 OpenID 提供程序。我们可以将其视为负责身份验证和用户数据(角色、配置文件、联系信息等)的用户服务。它是最完整的 OpenID Connect ࿰…...
第三十六:6.6. 【$refs、$parent】
概述: $refs用于 :父→子。 $parent用于:子→父。 // 向外部提供数据 defineExpose({house}) 原理如下: 属性说明$refs值为对象,包含所有被ref属性标识的DOM元素或组件实例。$parent值为对象,当前组件…...
【源码】【Java并发】【线程池】邀请您从0-1阅读ThreadPoolExecutor源码
👋hi,我不是一名外包公司的员工,也不会偷吃茶水间的零食,我的梦想是能写高端CRUD 🔥 2025本人正在沉淀中… 博客更新速度 👍 欢迎点赞、收藏、关注,跟上我的更新节奏 📚欢迎订阅专栏…...
【开源免费】基于SpringBoot+Vue.JS网络海鲜市场系统(JAVA毕业设计)
本文项目编号 T 222 ,文末自助获取源码 \color{red}{T222,文末自助获取源码} T222,文末自助获取源码 目录 一、系统介绍二、数据库设计三、配套教程3.1 启动教程3.2 讲解视频3.3 二次开发教程 四、功能截图五、文案资料5.1 选题背景5.2 国内…...
抽象工厂模式:思考与解读
原文地址:抽象工厂模式:思考与解读 更多内容请关注: 引言 你是否曾经在开发系统时,需要创建一系列相关的对象,而这些对象需要共同协作并保持一致性?假设你有多个不同的产品类型,但它们需要在系统中一起工…...
【综合项目】api系统——基于Node.js、express、mysql等技术
目录 0 前言 1 初始化 2 注册登录 2.1 注册 2.1.1 功能:密码加密(2.3.3) 2.1.1.1 操作 2.1.1.2 bcryptjs详解 2.1.2 插入新用户(2.3.4) 2.1.3 优化:表单数据验证(2.5) …...
Go中slice和map引用传递误区
背景 关于slice和map是指传递还是引用传递,很多文章都分析得模棱两可,其实在Go中只有值传递,但是很多情况下是因为分不清slice和map的底层实现,所以导致很多人在这一块产生疑惑,下面通过代码案例分析slice和map到底是…...
C++ ++++++++++
初始C 注释 变量 常量 关键字 标识符命名规则 数据类型 C规定在创建一个变量或者常量时,必须要指定出相应的数据类型,否则无法给变量分配内存 整型 sizeof关键字 浮点型(实型) 有效位数保留七位,带小数点。 这个是保…...
【北京迅为】iTOP-RK3568OpenHarmony系统南向驱动开发-第1章 GPIO基础知识
瑞芯微RK3568芯片是一款定位中高端的通用型SOC,采用22nm制程工艺,搭载一颗四核Cortex-A55处理器和Mali G52 2EE 图形处理器。RK3568 支持4K 解码和 1080P 编码,支持SATA/PCIE/USB3.0 外围接口。RK3568内置独立NPU,可用于轻量级人工…...
linux在vim中查找和替换
在Linux中使用Vim编辑器查找文本的方法非常直观和强大。Vim是一个高度可配置的文本编辑器,支持多种查找和替换的命令。下面是一些基本的查找命令: 1. 向前查找 要向前查找文本,可以使用以下命令: /text_to_find 例如,…...
AWS中使用CloudFront分发API Gateway
首先需要准备一个Lambda function(Lambda->Functions) 还要准备一个证书,要覆盖子域名(AWS Certificate Manager->Certificates)。 1、API Gateway->Create API->REST API->Build->API endpoint type( Edge-optimized )-…...
探秘《矩阵之美》:解锁矩阵的无限魅力
在这个数据驱动的时代,矩阵作为数学中的瑰宝,不仅在理论研究中占据核心地位,更在工程技术、计算机科学、物理学、经济学等众多领域发挥着不可替代的作用。今天,让我们通过中科院大学耿修瑞老师(中科院空天信息研究院研…...
进行性核上性麻痹患者的生活护理指南
进行性核上性麻痹是一种神经系统退行性疾病,合理的生活护理能有效改善症状,提高生活质量。 居家环境要安全。移除地面杂物,铺设防滑垫,安装扶手,降低跌倒风险。在浴室、厨房等湿滑区域要特别加强防护措施。建议在床边、…...
JVM--虚拟机
JVM,即虚拟机,可以简单理解为将字节码文件翻译成机器码的机器。 .class文件-->机器码文件 JVM整体组成部分 1.类加载器 负责从磁盘中加载字节码文件到JVM中 2.运行时数据区 按照不同的数据分区进行存储(方法区,堆,栈,本地方…...
pyside6学习专栏(八):在PySide6中使用matplotlib库绘制三维图形
本代码原来是PySide6官网的一个示例程序,我对其进行的详细的注释,同时增加了一个功能:加载显示cass的地形图坐标数据示例,示例可显示以下几种三维图形 程序运行界面如下: 代码如下: # -*- coding: utf-8 -…...
松灵机器人地盘 安装 ros 驱动 并且 发布ros 指令进行控制
安装驱动 $ cd ~/catkin_ws/src $ git clone https://github.com/agilexrobotics/ugv_sdk.git $ git clone https://github.com/agilexrobotics/scout_ros.git $ cd .. $ catkin_make安装 ● 使能 gs_usb 内核模块 ● 设置 500k 波特率和使能 can-to-usb 适配器 sudo modp…...
Highcharts 配置语法详解
Highcharts 配置语法详解 引言 Highcharts 是一个功能强大的图表库,广泛应用于数据可视化领域。本文将详细介绍 Highcharts 的配置语法,帮助您快速上手并制作出精美、实用的图表。 高级配置结构 Highcharts 的配置对象通常包含以下几部分:…...
python力扣2:两数相加
给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 请你将两个数相加,并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外,这两个数都不会以 0 开…...
服务器间迁移conda环境
注意:可使用迁移miniconda文件 or 迁移yaml文件两种方式,推荐前者,基本无bug! 一、迁移miniconda文件: 拷贝旧机器的miniconda文件文件到新机器: 内网拷贝:scp -r mazhf192.168.1.233:~/miniconda3 ~/ 外…...
LeetCode第58题_最后一个单词的长度
LeetCode 第58题:最后一个单词的长度 题目描述 给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中最后一个单词的长度。 单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。 难度 简单 题目链接 点…...
Python 绘制迷宫游戏,自带最优解路线
1、需要安装pygame 2、上下左右移动,空格实现物体所在位置到终点的路线,会有虚线绘制。 import pygame import random import math# 迷宫单元格类 class Cell:def __init__(self, x, y):self.x xself.y yself.walls {top: True, right: True, botto…...
恶意 SSP 注入收集密码
SSP 安全服务提供者,是微软提供的与安全有关的函数接口,用户可根据自己的需求调用 SSP 接口实现高度自定义的身份验证等安全功能。攻击者注入恶意的 SSP 接口覆盖微软默认的某些安全功能,导致用户一旦进行身份验证,恶意的 SSP 将保…...
Llama 2中的Margin Loss:为何更高的Margin导致更大的Loss和梯度?
Llama 2中的Margin Loss:为何更高的Margin导致更大的Loss和梯度? 在《Llama 2: Open Foundation and Fine-Tuned Chat Models》论文中,作者在强化学习与人类反馈(RLHF)的Reward Model训练中引入了Margin Loss的概念&a…...
Python----数据分析(Numpy:安装,数组创建,切片和索引,数组的属性,数据类型,数组形状,数组的运算,基本函数)
一、 Numpy库简介 1.1、概念 NumPy(Numerical Python)是一个开源的Python科学计算库,旨在为Python提供 高性能的多维数组对象和一系列工具。NumPy数组是Python数据分析的基础,许多 其他的数据处理库(如Pandas、SciPy)都依赖于Num…...
Android Logcat 高效调试指南
工具概览 Logcat 是 Android SDK 提供的命令行日志工具,支持灵活过滤、格式定制和实时监控,官方文档详见 Android Developer。 基础用法 命令格式 [adb] logcat [<option>] ... [<filter-spec>] ... 执行方式 直接调用(通过ADB守…...
Pytest之fixture的常见用法
文章目录 1.前言2.使用fixture执行前置操作3.使用conftest共享fixture4.使用yield执行后置操作 1.前言 在pytest中,fixture是一个非常强大和灵活的功能,用于为测试函数提供固定的测试数据、测试环境或执行一些前置和后置操作等, 与setup和te…...
如何把网络ip改为动态:全面指南
在数字化时代,网络IP地址作为设备在网络中的唯一标识,扮演着至关重要的角色。随着网络环境的不断变化,静态IP地址的局限性逐渐显现,而动态IP地址则因其灵活性和安全性受到越来越多用户的青睐。那么,如何把网络IP改为动…...
anythingLLM和deepseek4j和milvus组合建立RAG知识库
1、deepseek本地化部署使用 ollama 下载模型 Tags bge-m3 bge-m3:latest deepseek-r1:32b deepseek-r1:8b 2、安装好向量数据库 milvus docker安装milvus单机版-CSDN博客 3、安装 anythingLLM AnythingLLM | The all-in-one AI application for everyone …...
