numpy 简单应用

本文详细介绍了如何使用Python的NumPy库进行数组操作,包括基本的数组创建、属性获取、数学运算及矩阵运算等内容。此外,还展示了如何利用NumPy进行随机数生成、统计分析等高级应用。

1、将一个列表转换成numpy的array

import numpy as np
array = np.array([[1,2,3],[2,4,5]])
print(array)
#数组维度,即行数 输出2
print(array.ndim)
#数组行列数 输出(2,3)
print(array.shape)
#元素个数 输出6
print(array.size)


2、创建不同类型的数组

import numpy as np
#通过列表形式创建,输出[1 2 3 4]和列表形式差不多,只是没有逗号
a = np.array([1,2,3,4])
print(a)
#可以通过dtype来定义数组内的类型,类型包含np.int,np.float32,np.double等,输出int64
atype = np.array([1,2,3,4],dtype = np.int)
print(atype.dtype)

#生成4行,5列全部为零的矩阵,全部为1的矩阵np.ones(),np.empty(),里面是接近为零的矩阵,
#函数参数是元组,表示数组的维数,如(3,4)
b = np.zeros((4,5))
print(b)

#生成有序的数列,从10到20,步长为2,和range差不多
c = np.arange(10,20,2)
print(c)

#生成顺序的多维数组
d = np.arange(16).reshape((4,4))
print(d)
#生成一条线上的所有间隔点
e = np.linspace(1,10,20)
print(e)


3、numpy.array的相关运算

import numpy as np

#python中次方是**
a = 10**3
print(a)

#numpy中的sin,cos等函数
b = np.sin(0.5)
print(b)

#找出数组中数据小于5的数,输出是同等大小的数组,里面标识为True和False
c = np.arange(12).reshape((3,4))
print(c<5)

#二维矩阵运算
d = np.array([[1,2],[2,3]])
e = np.ones((2,2))
#矩阵中元素逐个相乘
f = d*e
print(f)
#矩阵相乘
g = np.dot(d,e)
print(g)
#第二种形式
h = d.dot(e)
print(h)

#生成一个随即的矩阵
i = np.random.random((2,4))
print(i)

#找到矩阵中最大值,最小直,求和
print(np.sum(i))
print(np.max(i))
print(np.min(i))

#找一行中的最大最小求和,axis=1为行求值,axis=0为列求值。
print(np.sum(i,axis = 1))
print(np.max(i,axis = 0))
print(np.min(i,axis = 0))

### NumPy简单使用示例 以下是几个常见的 NumPy 简单使用示例,涵盖了数组创建、数据类型查看以及基础运算等内容。 #### 1. 创建一维数组 通过 `np.array` 方法可以轻松创建一个一维数组。 ```python import numpy as np arr = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) print(arr) # 输出: [0 1 2 3 4 5 6 7 8 9] ``` 此代码展示了如何利用 Python 列表快速构建 NumPy 数组[^1]。 #### 2. 查看数组的数据类型 可以通过 `type()` 函数确认对象是否为 NumPy 的 `ndarray` 类型。 ```python import numpy as np arr = np.array([1, 2, 3, 4, 5]) print(type(arr)) # 输出: <class 'numpy.ndarray'> ``` 这段代码说明了 NumPy 中的核心概念——`ndarray` 是其主要的数据结构形式[^3]。 #### 3. 使用元组构造数组 除了列表外,还可以使用元组来初始化 NumPy 数组。 ```python import numpy as np arr = np.array((1, 2, 3, 4, 5)) print(arr) # 输出: [1 2 3 4 5] ``` 这表明无论是列表还是元组都可以作为输入参数用于生成 NumPy 数组[^3]。 #### 4. 矩阵乘法 矩阵之间的乘法可通过 `np.matmul` 或者 `@` 运算符实现。 ```python import numpy as np mat1 = np.array([[1, 2], [3, 4]]) mat2 = np.array([[5, 6], [7, 8]]) mat_product = np.matmul(mat1, mat2) print(mat_product) # 输出: [[19 22] [43 50]] ``` 这里提供了两个二维数组相乘的具体案例[^4]。 #### 5. 计算矩阵的特征值和特征向量 对于线性代数中的应用,计算给定方阵的特征值与特征向量非常常见。 ```python import numpy as np mat = np.array([[1, 2], [3, 4]]) eigvals, eigvecs = np.linalg.eig(mat) print("特征值:", eigvals) # 特征值 print("特征向量:\n", eigvecs) # 对应的特征向量 ``` 该部分介绍了如何求解矩阵的特征值及其对应的特征向量[^5]。 --- 问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值