numpy 学习

article/2025/10/15 15:21:13

# numpy 学习
1.了解numpy 特性

2.掌握numpy的使用方法

numpy 官网地址 https://numpy.org/

 NumPy简介

NumPy(NumericalPython)是Python数据分析必不可少的第三方库,NumPy的出现一定程度上解决了Python运算性能不佳的问题,同时提供了更加精确的数据类型,使其具备了构造复杂数据类型的能力。本身是由C语言开发,是个很基础的扩展,NumPy被Python其它科学计算包作为基础包,因此理解np的数据类型对python数据分析十分重要。NumPy重在数值计算,主要用于多维数组(矩阵)处理的库。用来存储和处理大型矩阵,比Python自身的嵌套列表结构要高效的多。

NumPy重要功能如下:

    高性能科学计算和数据分析的基础包

    ndarray,多维数组,具有矢量运算能力,快速、节省空间

    矩阵运算,无需循环,可完成类似Matlab中的矢量运算

    用于读写磁盘数据的工具以及用于操作内存映射文件的工具
    
    

 NumPy属性
 Numpy主要对象是同类元素,的多维数据,所有元素都是一种类型。
 在Numpy中(dimensions)叫做轴(axes),轴的个数叫做秩(rank)
 
 Numpy的数组类被称为ndarray,通常被称为数组。
 
 ndarray对象属性有:
 
 ndarray.ndmin  数组轴的个数
 
 ndarray.shape   数组的维度
 
 ndarray.size  数组元素的总个数, 就是shape中元组的承积
 
 ndarray.dytpe 用来描述数组中的元素类型,这个是python中的type有区别,不要混淆。
 
 ndarray.itemsize 数组中每个元素字节的大写

**代码示列**

import numpy as np
a = np.arange(15).reshape(3, 5) ## np.arange(15)数组元素是15个,reshape(3,5)元组的形状3行5列
print ("数组的维度:",a.shape)
print ("数组轴的个数:",a.ndim)
print ("数组元素类型:",a.dtype)
print ("数组中每个元素的字节大小:",a.itemsize)
print ("数组元素的总个数:", a.size)
print ("类型查询:",type(a))#创建一个数组
b = np.array([6, 7, 8])
print ("数组b:",b)
print ("数组b类型:",type(b))


运行结果:
数组的维度: (3, 5)

数组轴的个数: 2

数组元素类型: int32

数组中每个元素的字节大小: 4

数组元素的总个数: 15

类型查询: <class 'numpy.ndarray'>

数组b: [6 7 8]

数组b类型: <class 'numpy.ndarray'>

创建ndarray

ndarray 就是numpy的多维数组,ndarray的下标是从0开始,数组里元素必须是同一个类型

import numpy as np
a = np.array([1,3,5])
print('打印数组a:',a)
print('数组元素a的类型:',a.dtype)b = np.array([1.2,2.0,3.0])
print('数组元素b的类型:',b.dtype)

arange

arange 和python的range()类似,arange 创建一个一维的数组

np_arange = np.arange(10, 20, 5,dtype=int)
print ("arange创建np_arange:",np_arange)
print( "arange创建np_arange的元素类型:",np_arange.dtype)
print ("arange创建np_arange的类型:",type(np_arange))

matrix

matrix 是ndarray的一个子类,只能生成2纬的矩阵

 

创建随机数矩阵
 

import  numpy as np
## 生成指定维度大小(3行4列,这个是二维的没发表示所以我这里就用行和列来表示)rand的固定区间是0~1。0
arr = np.random.rand(3,4)
print(arr)
print(type(arr))
# 生成指定维度大小(3行4列)的随机多维整型数据(二维),randint()可以指定区间(-1, 5)
arr = np.random.randint(-1, 5, size = (3, 4))
print(arr)
print(type(arr))# 生成指定维度大小(3行4列)的随机多维浮点型数据(二维),uniform()可以指定区间(-1, 5)产生-1到5之间均匀分布的样本值
arr = np.random.uniform(-1, 5, size = (3, 4)) #
print(arr)
print(type(arr))

ndarray的数据类型

  1. dtype参数,指定数组的数据类型,类型名+位数,如float64, int32

  2. astype方法,转换数组的数据类型

# 初始化3行4列数组,数据类型为float64
zeros_float_arr = np.zeros((3, 4), dtype=np.float64)
print(zeros_float_arr)
print(zeros_float_arr.dtype) #float64# astype转换数据类型,将已有的数组的数据类型转换为int32
zeros_int_arr = zeros_float_arr.astype(np.int32)
print(zeros_int_arr)
print(zeros_int_arr.dtype)  #int32


http://chatgpt.dhexx.cn/article/Fysy9dtG.shtml

相关文章

numpy学习

1.Numpy的核心array对象以及创建array的方法 Numpy的核心数据结构&#xff0c;就叫做array就是数组&#xff0c;array对象可以是一维数组&#xff0c;也可以是多维数组&#xff1b;Python的List也可以实现相同的功能&#xff0c;但是array比List的优点在于性能好、包含数组元数…

【NumPy教程】(快速入门版)

文章目录 读者阅读条件 NumPy是什么NumPy使用需求NumPy应用场景 NumPy下载与安装Windows系统安装MacOSX系统安装Linux系统安装1) Ubuntu/Debian2) Redhat/CentOS NumPy ndarray对象创建ndarray对象ndim查看数组维数reshape数组变维 NumPy数据类型数据类型对象数据类型标识码定义…

NumPy教程(Numpy基本操作、Numpy数据处理)

Numpy 属性 介绍几种 numpy 的属性: • ndim&#xff1a;维度 • shape&#xff1a;行数和列数 • size&#xff1a;元素个数 使用numpy首先要导入模块 import numpy as np #为了方便使用numpy 采用np简写 列表转化为矩阵&#xff1a; python array np.array([[1,2,3],[2,3,…

【Python】Python之Numpy的超实用基础详细教程

Numpy在python中属于非常常用的包&#xff0c;无论是机器学习搭配pandas&#xff0c;还是数据可视化搭配pylab都是很正常的搭配。 Numpy numpy的官方中文文档&#xff1a;NumPy 中文 NumPy是使用Python进行科学计算的基础软件包。除其他外&#xff0c;它包括&#xff1a; 功…

numpy入门详细教程(一)

本讲主要介绍对numpy库和numpy库的N维数组对象&#xff1a;ndarray的基本了解。更多内容请看numpy入门详细教程(二) numpy: NumPy是一个开源的Python科学计算基础库,包含: • 一个强大的N维数组对象 ndarray • 广播功能函数 • 整合C/C/Fortran代码的工具 • 线性代数、傅里…

Python基础 Numpy菜鸟教程

NumPy(Numerical Python) 是 Python 语言的一个扩展程序库&#xff0c;支持大量的维度数组与矩阵运算&#xff0c;此外也针对数组运算提供大量的数学函数库。 NumPy 的前身 Numeric 最早是由 Jim Hugunin 与其它协作者共同开发&#xff0c;2005 年&#xff0c;Travis Oliphant…

Numpy教程(一)

参考资料&#xff1a;清华计算机博士带你学-Python金融量化分析 目录 demo1-numpy与for循环对比 demo2-向量内&#xff08;点&#xff09;积求和&#xff08;对应位置相乘&#xff09; demo3-ndarray常见属性 demo4-数组的创建 demo5-批量运算 demo6-索引与切片 demo7-布…

NumPy进阶教程——超详细

Numpy基础教程&#xff1a; https://blog.csdn.net/qq_43328040/article/details/106601065 ———————————————————————————————————— 文章目录 一.ndarray对象内幕1.1 Numpy dtype 层次结构 二.高阶数组操作2.1重塑数组2.2 C顺序和Fortran…

Numpy安装教程

一、查看自己的python版本 使用winR弹出搜索框&#xff0c;输入cmd打开命令提示符&#xff0c;在其中输入python并按回车&#xff0c;得到以下结果 查看自己使用的python版本 二、下载对应的Numpy版本 Python Extension Packages for Windows - Christoph Gohlke (uci.edu) 可…

Python Numpy库教程(超详细)

1 Numpy概述 1.1 概念 Python本身含有列表和数组&#xff0c;但对于大数据来说&#xff0c;这些结构是有很多不足的。由于列表的元素可以是任何对象&#xff0c;因此列表中所保存的是对象的指针。对于数值运算来说这种 结构比较浪费内存和CPU资源。至于数组对象&#xff0c;它…

Python基础(十) | Numpy详细教程

⭐本专栏旨在对Python的基础语法进行详解&#xff0c;精炼地总结语法中的重点&#xff0c;详解难点&#xff0c;面向零基础及入门的学习者&#xff0c;通过专栏的学习可以熟练掌握python编程&#xff0c;同时为后续的数据分析&#xff0c;机器学习及深度学习的代码能力打下坚实…

【python学习】最全Numpy教程

1. Numpy概述 NumPy&#xff08;Numerical Python的简称&#xff09;是Python数值计算最重要的基础包。大多数提供科学计算的包都是用NumPy的数组作为构建基础。1.1.1. Why NumPy? 1.一个强大的N维数组对象ndarray&#xff0c;具有矢量算术运算和复杂广播能力的快速且节省空…

Python Numpy库教程

目录 1 Numpy概述1.1 概念1.2 功能1.3 对象1.4 数据类型1.5 数组属性 2 Numpy数组操作2.1 Numpy创建2.1.1 利用列表生成数组2.1.2 利用random模块生成数组2.1.3 创建特定形状数组 2.2 索引和切片2.2.1 元素表示2.2.2 切片表示2.2.3 多维数组的切片2.2.4 布尔索引2.2.5 元素查找…

【数据分析】Numpy入门教程(超详细)

Numpy 教程 什么是Numpy&#xff1f;Numpy(Numerical Python)是一个Python扩展库&#xff0c;支持大量的维度数组和矩阵运算&#xff0c;此外也针对数组运算提供大量的数学函数库。 其主要用于数组计算&#xff0c;特点包括&#xff1a; 一个强大的N维数组对象ndarray广播功…

Python之Numpy详细教程

NumPy - 简介 NumPy 是一个 Python 包。 它代表 “Numeric Python”。 它是一个由多维数组对象和用于处理数组的例程集合组成的库。 Numeric&#xff0c;即 NumPy 的前身&#xff0c;是由 Jim Hugunin 开发的。 也开发了另一个包 Numarray &#xff0c;它拥有一些额外的功能。…

Java泛型方法的定义和使用

目录 一、基本介绍1、Java泛型的基本语法格式为:2、在使用泛型时,还需要注意以下几点:二、泛型的优点1、类型安全2、消除强制类型转换3、更高的效率4、潜在的性能收益三、常见泛型字母含义四、使用泛型时的注意事项五、泛型的使用1、泛型类2、泛型接口3、泛型通配符4、泛型方…

java参数传入泛型类型_java泛型方法参数传递

Java参数&#xff0c;不管是原始类型还是引用类型&#xff0c;传递的都是副本(有另外一种说法是传值&#xff0c;但是说传副本更好理解吧&#xff0c;传值通常是相对传址而言)。 如果参数类型是原始类型&#xff0c;那么传过来的就是这个参数的一个副本&#xff0c;也就是这个…

Java 泛型作为方法参数

Java 泛型作为方法参数 例程源码&#xff1a; import java.util.List;public class GoodsSeller {public void sellGoods(List<? extends Goods> goods){//调用集合中的sell方法for(Goods g:goods){g.sell();}} }public class Book extends Goods {Overridepublic void …

49天精通Java,第32天,Java泛型方法的定义和使用

🏆作者简介:哪吒,CSDN2022博客之星Top1、CSDN2021博客之星Top2、多届新星计划导师✌、博客专家💪 ,专注Java硬核干货分享,立志做到Java赛道全网Top N。 🏆本文收录于Java基础教程(入门篇),包含面向对象、基本数据类型、数组、继承和多态、泛型、枚举等Java基础知识…

java泛型 方法返回值带有泛型 <T>

方法返回值前的<T>的左右是告诉编译器&#xff0c;当前的方法的值传入类型可以和类初始化的泛型类不同&#xff0c;也就是该方法的泛型类可以自定义&#xff0c;不需要跟类初始化的泛型类相同。 转自&#xff1a;https://blog.csdn.net/huyashangding/article/details/9…