【Numpy库学习笔记】Numpy中dim、shape和size的理解

简介: 【Numpy库学习笔记】Numpy中dim、shape和size的理解

一、dim

理解:

dim就是维数,比如数组会有一维数组,二维数组……。numpy的dim维数同理。


那如何判断numpy的维数,最简单的方法就是数一数"中括号"的数量。没有中括号,dim=0; 1个中括号,dim=1; 2个中括号,dim=2 ……如:

①a = np.array([[1,2,3],[2,3,4]]),在array和第一行元素1,2,3中间有2个[,说明是2维。

②a = np.array(3),在array和第一个元素3中间没有[,所以是0维。

③a = np.array([4]),在array和第一个元素4中间有一个[,说明是1维。


代码:

import numpy as np
a = np.array(3)
print(a.ndim)   # a的维度ndim=3
b = np.array([2])
print(b.ndim)  # b的维度ndim=1
c = np.array([[1,2,3],[2,3,4]])
print(c.ndim)  # c的维度ndim=2

二、shape

理解:

shape表示numpy数组的是什么形状的,比如一个二维的数组是几行几列的。


代码:

import numpy as np
array = np.array([[1, 2, 3],
                  [2, 3, 4]])
print(array.shape)

输出:

(2, 3)


备注:

①使用np.array构造一个2维的数组,使用array.shape查看数组的shape形状。

②(2,3)表明numpy数组是2行3列的数组。第一行 1,2,3;第二行 2,3,4。


三、size

理解:

size表示数组中一共有多少个元素。


代码:


import numpy as np
array = np.array([[1, 2, 3],
                  [2, 3, 4]])
print(array.size)

输出:

6


备注:

使用np.array创建了一个2维的2行3列的数组,一共有2×3=个元素。


四、代码示例

import numpy as np
array = np.array([[1, 2, 3], [2, 3, 4], [3, 4, 5]])
print(array)  # 打印矩阵
print('number of dim:', array.ndim)  # dim维度 2
print('shape:', array.shape)  # shape(几行几列)shape(2,3) 代表2行3列
print('size:', array.size)  # size 总共有多少个元素在里面
目录
相关文章
|
3月前
|
存储 数据处理 Python
Python科学计算:NumPy与SciPy的高效数据处理与分析
【10月更文挑战第27天】在科学计算和数据分析领域,Python凭借简洁的语法和强大的库支持广受欢迎。NumPy和SciPy作为Python科学计算的两大基石,提供了高效的数据处理和分析工具。NumPy的核心功能是N维数组对象(ndarray),支持高效的大型数据集操作;SciPy则在此基础上提供了线性代数、信号处理、优化和统计分析等多种科学计算工具。结合使用NumPy和SciPy,可以显著提升数据处理和分析的效率,使Python成为科学计算和数据分析的首选语言。
117 3
|
3月前
|
存储 机器学习/深度学习 算法
Python科学计算:NumPy与SciPy的高效数据处理与分析
【10月更文挑战第26天】NumPy和SciPy是Python科学计算领域的两大核心库。NumPy提供高效的多维数组对象和丰富的数学函数,而SciPy则在此基础上提供了更多高级的科学计算功能,如数值积分、优化和统计等。两者结合使Python在科学计算中具有极高的效率和广泛的应用。
125 2
|
4月前
|
机器学习/深度学习 并行计算 大数据
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧2
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧
163 10
|
4月前
|
索引 Python
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧1
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧
183 4
|
5月前
|
机器学习/深度学习 数据处理 Python
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
148 1
|
5月前
|
机器学习/深度学习 算法 数据可视化
8种数值变量的特征工程技术:利用Sklearn、Numpy和Python将数值转化为预测模型的有效特征
特征工程是机器学习流程中的关键步骤,通过将原始数据转换为更具意义的特征,增强模型对数据关系的理解能力。本文重点介绍处理数值变量的高级特征工程技术,包括归一化、多项式特征、FunctionTransformer、KBinsDiscretizer、对数变换、PowerTransformer、QuantileTransformer和PCA,旨在提升模型性能。这些技术能够揭示数据中的潜在模式、优化变量表示,并应对数据分布和内在特性带来的挑战,从而提高模型的稳健性和泛化能力。每种技术都有其独特优势,适用于不同类型的数据和问题。通过实验和验证选择最适合的变换方法至关重要。
94 5
8种数值变量的特征工程技术:利用Sklearn、Numpy和Python将数值转化为预测模型的有效特征
|
6月前
|
机器学习/深度学习 存储 算法
NumPy 与 SciPy:Python 科学计算库的比较
【8月更文挑战第30天】
249 5
|
6月前
|
存储 C语言 Python
|
6月前
|
存储 并行计算 测试技术
NumPy 性能优化:提升 Python 数值计算的速度
【8月更文第30天】Python 是一种广泛使用的编程语言,在科学计算领域尤其受欢迎。然而,由于 Python 的动态类型和解释执行机制,其在处理大规模数值数据时可能会显得相对较慢。为了克服这一限制,NumPy(Numerical Python)库提供了高性能的多维数组对象以及一系列用于操作这些数组的函数。本文将探讨如何利用 NumPy 来提高 Python 中数值运算的效率。
690 1
|
6月前
|
存储 缓存 C语言