学会使用 NumPy:基础、随机、ufunc 和练习测试

NumPy

NumPy 是一个用于处理数组的 Python 库。它代表“Numerical Python”。

基本

随机

ufunc

通过测验测试学习

检验您对 NumPy 的掌握程度。

通过练习学习

NumPy 练习

练习:

请插入创建 NumPy 数组的正确方法。

arr = np.
([1, 2, 3, 4, 5])

示例

创建 NumPy 数组:

import numpy as np

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

print(arr)
print(type(arr))

输出:

[1 2 3 4 5]
<class 'numpy.ndarray'>

NumPy 简介

什么是 NumPy?

NumPy 是一个用于处理数组的 Python 库。它代表“Numerical Python”。它提供了一个称为 ndarray 的多维数组对象,以及用于操作这些数组的高效函数。NumPy 还提供了用于线性代数、傅里叶变换和矩阵领域的函数。

NumPy 由 Travis Oliphant 于 2005 年创建,是一个开源项目,可以免费使用。

为什么使用 NumPy?

在 Python 中,我们有列表来实现数组的功能,但是它们处理起来速度较慢。NumPy 旨在提供一个比传统 Python 列表快 50 倍的数组对象。NumPy 中的数组对象称为 ndarray,它提供了许多支持函数,使得与 ndarray 的操作非常简单。

在数据科学中,数组被非常频繁地使用,速度和资源非常重要。

数据科学:是计算机科学的一个分支,研究如何存储、使用和分析数据以从中获得信息。

为什么 NumPy 比列表快?

NumPy 数组在内存中是连续存储的,而不像列表那样存储不连续,因此进程可以非常高效地访问和操作它们。这种行为在计算机科学中称为局部性引用。

这就是 NumPy 比列表更快的主要原因。此外,它还经过优化以与最新的 CPU 架构配合工作。

NumPy 是用哪种语言编写的?

NumPy 是一个 Python 库,部分是用 Python 编写的,但大多数需要快速计算的部分是用 C 或 C++ 编写的。

NumPy 入门

安装 NumPy

如果您已经安装了 Python 和 PIP,则安装 NumPy 非常简单。

使用以下命令进行安装:

C:\Users\Your Name>pip install numpy

如果此命令失败,则可以使用已经安装了 NumPy 的 Python 发行版,如 Anaconda、Spyder 等。

导入 NumPy

一旦安装了 NumPy,通过添加 import 关键字将其导入到您的应用程序中:

import numpy

现在 NumPy 已经被导入并且可以使用了。

示例:

import numpy

arr = numpy.array([1, 2, 3, 4, 5])

print(arr)

NumPy 的别名 np

通常,NumPy 被导入时会使用 np 别名。

别名:在 Python 中,别名是指同一个东西的另一个名称。

可以使用 as 关键字在导入时创建别名:

import numpy as np

现在可以使用 np 来引用 NumPy 包,而不是使用 numpy

示例

import numpy as np

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

print(arr)

检查 NumPy 版本

NumPy 版本信息存储在 __version__ 属性中。

示例

import numpy as np

print(np.__version__)

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎点赞、收藏、关注

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

启明云端2.4寸屏+ESP32-S3+小型智能调速电动家用除草机案例 触控三档调速,能显示电压故障码

今天给大家分享个启明云端2.4寸屏ESP32-S3小型智能调速电动家用除草机案例&#xff0c;国外有草坪文化&#xff0c;这个机器能智能触控三档调速&#xff0c;带屏能显示电压故障码&#xff0c;数显档位&#xff08;3档最大&#xff09;&#xff0c;触控屏&#xff0c;长按3秒就能…

git 的迁移

现象是gitlab经常会挂掉&#xff0c;linux会显示磁盘空间不足&#xff0c;实际上&#xff0c;我们linux某个目录的空间是4T。这个空间应该是足够的。猜测是gitlab的安装目录不对导致的空间不足。 1、查找原因 用rpm 安装gitlab会有自己的目录&#xff0c;很多安装文件会在opt…

Android binder死亡通知机制

在Andorid 的binder系统中&#xff0c;当Bn端由于种种原因死亡时&#xff0c;需要通知Bp端&#xff0c;Bp端感知Bn端死亡后&#xff0c;做相应的处理。 使用 Bp需要先注册一个死亡通知&#xff0c;当Bn端死亡时&#xff0c;回调到Bp端。 1&#xff0c;java代码注册死亡通知 …

使用硬盘对拷方法将数据无损转移到另一个硬盘!

硬盘对拷&#xff0c;其实就是磁盘克隆&#xff0c;很多人喜欢将其说成对拷&#xff0c;或者硬盘复制等&#xff0c;但不管怎么说&#xff0c;他们的目的都是一个&#xff0c;想要把原硬盘上的全部数据&#xff08;包括系统、程序、个人文件、隐藏配置数据等&#xff09;都无损…

mysql基础知识汇总

本文自行整理&#xff0c;只做学习记忆之用&#xff0c;若有不当之处请指出 一、数据库三层结构 &#xff08;1&#xff09;所谓安装Mysql数据库&#xff0c;就是在主机安装一个数据库管理系统(DBMS),这个管理程序可以管理多个数据库。DBMS(database manage system) &#xf…

【JVM】简述类加载器及双亲委派机制

双亲委派模型&#xff0c;是加载class文件的一种机制。在介绍双亲委派模型之前&#xff0c;我需要先介绍几种类加载器&#xff08;Class Loader&#xff09;。 1&#xff0c;类加载器 Bootstrap&#xff0c;加载lib/rt.jar&#xff0c;charset.jar等中的核心类&#xff0c;由…

港口数据复杂不知道如何监控?来试试FineVis所展现的智慧港口看板

一、智慧港口是什么 智慧港口代表着港口建设的未来趋势和发展方向。以信息物理系统为框架&#xff0c;智慧港口通过创新应用高新技术&#xff0c;实现了物流供给方和需求方之间的沟通&#xff0c;并将它们融入集疏运一体化系统中。这种系统极大地提升了港口及其相关物流园区对…

ospf路由过滤及策略实验

目录 一、实验拓扑 二、实验要求 三、实验思路 四、实验步骤 1、配置IP 2、配置RIP协议和OSPF协议 3、在R2上做双向路由引入 &#xff08;1&#xff09;进入到rip协议的1进程中引入ospf &#xff08;2&#xff09;进入到ospf协议的1进程中引入rip 4、在R2上使用acl和…

逻辑回归实战 -- 是否通过考试

http://链接: https://pan.baidu.com/s/1-uy-69rkc4WjMpPj6iRDDw 提取码: e69y 复制这段内容后打开百度网盘手机App&#xff0c;操作更方便哦 数据集下载链接 这是个二分类问题&#xff0c;通过x1,x2两个指标得出是否通过考试的结论。 逻辑回归的激活函数是sigmoid函数&…

【论文阅读】ChipNeMo中的数据集处理

前面总体学习了《ChipNeMo: Domain-Adapted LLMs for Chip Design》&#xff0c;然后又继续仔细看了论文中的领域适配分词和领域数据微调的预训练检索模型&#xff0c;对于数据集的处理&#xff0c;也需要仔细看一下。 提炼重点&#xff1a;1&#xff09;对于数据集&#xff0…

二维码门楼牌管理应用平台建设:创新社区管理模式

文章目录 前言一、二维码门楼牌管理应用平台的建设背景二、在线打卡功能的实现与意义三、查看浏览网格员在线打卡记录的重要性四、二维码门楼牌管理应用平台的未来展望五、结语 前言 随着信息技术的不断发展&#xff0c;社区管理正逐步迈向智能化、便捷化。二维码门楼牌管理应…

Databend 开源周报第 142 期

Databend 是一款现代云数仓。专为弹性和高效设计&#xff0c;为您的大规模分析需求保驾护航。自由且开源。即刻体验云服务&#xff1a;https://app.databend.cn 。 Whats On In Databend 探索 Databend 本周新进展&#xff0c;遇到更贴近你心意的 Databend 。 支持 WASM UDF …

Linux专栏01:Linux发展历史及背景介绍

博客主页&#xff1a;Duck Bro 博客主页系列专栏&#xff1a;Linux专栏关注博主&#xff0c;后期持续更新系列文章如果有错误感谢请大家批评指出&#xff0c;及时修改感谢大家点赞&#x1f44d;收藏⭐评论✍ Linux发展历史及背景介绍 编号&#xff1a;01 文章目录 Linux发展历…

在kuboard中添加k8s集群

1.登录kuboard后&#xff0c;点击添加集群面板 系统会跳转到k8s集群添加页面&#xff0c;按照页面提示输入自身的集群信息即可&#xff0c;此处没有什么难点。 添加成功后&#xff0c;点击集群面板&#xff0c;然后点击集群概要信息&#xff0c;就可以查看集群节点信息。 集群节…

C++-8

1.C中list容器实现 using namespace std;int main() {list<int> l1;l1.assign(2,3);list<int>::iterator n l1.begin();for(n l1.begin();n!l1.end();n){cout << *n << "\t";}cout << endl;cout << "last one " &l…

【书生浦语第二期实战营学习笔记作业(七)】

课程文档&#xff1a;https://github.com/InternLM/Tutorial/blob/camp2/opencompass/readme.md 课程作业&#xff1a;https://github.com/InternLM/Tutorial/blob/camp2/opencompass/homework.md OpenCompass 大模型评测实战 1. 大模型的评测1.1 大模型评测如何促进发展1.2 大…

Flink checkpoint 源码分析- Flink Checkpoint 触发流程分析

序言 最近因为工作需要在阅读flink checkpoint处理机制&#xff0c;学习的过程中记录下来&#xff0c;并分享给大家。也算是学习并记录。 目前公司使用的flink版本为1.11。因此以下的分析都是基于1.11版本来的。 在分享前可以简单对flink checkpoint机制做一个大致的了解。 …

城会玩,Selenium+Docker成功解决这一大难题

01、需求背景 日常测试中会遇到对web应用进行UI自动化的测试场景&#xff0c;一般常用的工具是使用Selenium&#xff0c;一套简单的UI自动化架构如下&#xff1a; 上图即为简单搭建的一套UI自动化测试架构&#xff0c;但 串行执行测试用例&#xff1a; 一台机器只能安装一个…

[Meachines][Hard]FormulaX

Main $ nmap -sC -sV 10.10.11.6 --min-rate 1000 # echo 10.10.11.6 formula.htb>>/etc/hosts 创建一个新用户,登录 来到聊天窗口,发现普通用户无法使用 来到联系页面,测试跨站 {"first_name":"<img srchttp://10.10.16.6/s-h4ck13/>",&qu…

form1弹出子窗体form2,拖动子窗体判断是否离开父窗体区域,含源码(学习笔记)

一、效果&#xff08;进入和离开&#xff09; 子窗体到达父窗体边缘时变色。 二、代码分析 判断父窗体的目的&#xff0c;可以控制子窗体要随父窗体走。上面代码需要加以处理。 如&#xff1a;this.Location new Point(parentPoint.X distanceFromEdge, this.Location.Ydis…
最新文章