python-NumPy库

NumPy包(上) python笔记扩展 NumPy 的全称是“ Numeric Python”,它是 Python 的第三方扩展包,主要用来计算、处理一维或多维数组在数组算术计算方面, NumPy 提供了大量的数学函数NumPy 的底层主要用 C语言编写,因此它能够高速地执行数值计算NumPy 还提供了多种数据结构,这些数据结构能够非常契合的应用在数组和矩阵的运算上。 阅读详情

1、NumPy

NumPy全称 Numerical Python,是一款开源的 Python 数学库。它是 Python 的第三方扩展包,主要用来计算、处理一维或多维数组。支持N维数组运算、处理大型矩阵、成熟的广播函数库、矢量运算、线性代数、傅里叶变换、随机数生成,也为数组运算提供大量的数学函数库。

安装:pip install numpy==1.26.0 -i https://pypi.tuna.tsinghua.edu.cn/simple/

2、导入NumPy

import numpy as np #导入numpy并简写为np

3、数组

4、创建数组

在Python中,可以使用第三方库 numpy 来创建和操作数组。Numpy是Python的一个强大数学和科学计算库,为高效操作多维数组提供了丰富的函数和方法。

首先需要安装 numpy 库,可以使用以下命令安装:pip install numpy

4.1 array()

np.array  ,建立一个数组

numpy.array(object, dtype = None, copy = True, order = None,ndmin = 0)

参数说明:

序号参数描述说明
1object表示一个数组序列
2dtype可选参数,通过它可以更改数组的数据类型
3copy可选参数,表示数组能否被复制,默认是 True
4order以哪种内存布局创建数组,有 3 个可选值,分别是 C(行序列)/F(列序列)/A(默认)
5ndmin用于指定数组的维度

案例:

import numpy as np   #导入numpy库,并简写为np

a = np.array([1, 2, 3])  #建立一个1维数组
b = np.array([[1, 2, 3], [4, 5, 6]])  #建立一个2维数组
c = np.array([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]])  #建立一个3维数组

print("a=",a)
print("b=",b)
print("c=",c)

 

4.2 zeros()

创建指定大小的数组,数组元素以 0 来填充

#创建全为0的矩阵
a = np.zeros((3)) #1维数组,1行3列
b = np.zeros((2,3)) #2维数组,2行3列
print(a)
print(b)


#a=[0. 0. 0.]


#b=[[0. 0. 0.]
#   [0. 0. 0.]]

 

4.3 ones()

创建指定形状的数组,数组元素以 1 来填充

import numpy as np

#创建全为1的矩阵
a = np.ones((3))
b = np.ones((3,4))

print(a)
print(b

#a=[1. 1. 1.]

#b=[[1. 1. 1. 1.]
#   [1. 1. 1. 1.]
#   [1. 1. 1. 1.]]

4.4 full()

full()用于创建一个填充指定值的数组。

格式:

 numpy.full(shape, fill_value, dtype=None, order='C')
参数描述
shape数组的形状(如 (2, 3) 表示 2 行 3 列的数组)
fill_value填充的值
dtype数组的数据类型(如 np.float32)
order数组的内存布局(如 'C' 表示 C 风格,'F' 表示 Fortran 风格)
import numpy as np

#full()
a = np.full((3,3), 10)
b = np.full((3,3), 15)
c = np.full((3,3), fill_value='a')
print(a)
print(b)
print(c)

#a=[[10 10 10]
#   [10 10 10]
#   [10 10 10]]

#b=[[15 15 15]
#   [15 15 15]
#   [15 15 15]]

#c=[['a' 'a' 'a']
#   ['a' 'a' 'a']
#   ['a' 'a' 'a']]

4.5 arange()

arange() 函数用于创建一个等差数列的数组。它类似于 Python 内置的 range() 函数,但返回的是一个 NumPy 数组而不是一个列表。

格式:

 numpy.arange(start, stop, step, dtype)

根据 start 与 stop 指定的范围以及 step 设定的步长,生成一个 ndarray。

参数描述
start起始值,默认为 0
stop终止值(不包含)
step步长,默认为 1
dtype返回 ndarray 的数据类型,如果没有提供,则会使用输入数据的类型
import numpy as np

#arange(start, stop, step)函数用于生成一个等差数列

a = np.arange(1, 11, 1)
b = np.arange(10, 0, -1)
print(a)
print(b)

#[ 1  2  3  4  5  6  7  8  9 10]
#[10  9  8  7  6  5  4  3  2  1]

 

4.6 linspace

在指定的数值区间内,返回均匀间隔的一维等差数组,默认均分 50 份

格式:

 np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)
参数描述
start起始值,默认为 0
stop终止值(默认包含)
num表示数值区间内要生成多少个均匀的样本,默认值为 50
endpoint默认为 True,表示数列包含 stop 终止值,反之不包含
retstep表示是否返回步长。如果为 True,则返回一个包含数组和步长的元组;如果为 False,则只返回数组。默认为 False。
dtype返回 ndarray 的数据类型,默认为 None,表示根据输入参数自动推断数据类型。
import numpy as np

# linspace(start, stop, num) 产生等差数列
a = np.linspace(0,10,5 )
b = np.linspace(0,10,11)
print(a)
print(b)

[ 0.   2.5  5.   7.5 10. ]
[ 0.  1.  2.  3.  4.  5.  6.  7.  8.  9. 10.]

4.7其他

  • np.arange()  线性序列数组: np.arange(start, stop, step, dtype)
  • np.linspace() 等差数组: np.linspace(start, stop, num, endpoint, retstep, dtype)
  • np.logspace() 等比数组: np.logspace(start, stop, num, endpoint, base, dtype)
  • np.zeros() 全零的数组
  • np.ons() 全一的数组 float型: np.ones(shape, dtype, order
  • np.full() 返回给定形状和类型的新数组
  • np.identity(),np.eye() 单位矩阵形成的数组: np.identity(n, dtype=None)
  • np.identity(),np.eye() 单位矩阵形成的数组: np.eye(N, M=None, k=0, dtype=float)
  • np.diag() 对角数组: np.diag(v, k=0)
  • np.empty() 空数组,元素取值随机: np.empty(shape, dtype=float, order='C')
  • np.random 生成随机数: np.random.rand(d0, d1, ..., dn)
  • np.random.randint(low, high=None, size=None, dtype='l')  随机整数


#np.linspace() 等差数组
#np.logspace() 等比数组: np.logspace(start, stop, num, endpoint, base, dtype)
#start: 开始值
#stop: 结束值
#num: 元素个数
#endpoint: 是否包含结束值
#base: 底数
#dtype: 数据类型
a = np.logspace(1, 10, 10, endpoint=True, base=2.0, dtype=np.float32)
print(a)


# np.identity(),np.eye() 单位矩阵形成的数组: np.identity(n, dtype=None)
a = np.identity(3)
b = np.eye(3)
print(a)
print(b)

#[[1. 0. 0.]
# [0. 1. 0.]
# [0. 0. 1.]]


# np.diag() 对角数组: np.diag(v, k=0)
a = np.diag([1, 2, 3])
print(a)

#[[1 0 0]
# [0 2 0]
#[0 0 3]]


# np.empty() 空数组,元素取值随机: np.empty(shape, dtype=float, order='C')
a = np.empty((3, 2))
b = np.empty((3, 2),dtype=int)
print(b)
print(a)


# np.random 生成随机数: np.random.rand(d0, d1, ..., dn)
a = np.random.rand(3, 2)
print(a)


# np.random.randint(low, high=None, size=None, dtype='l')  随机整数
#low: 整数,生成的随机整数的下限,默认值为0。
#high: 整数,生成的随机整数的上限,默认值为None,表示上限取决于low。
#size: 整数或元组,生成的随机整数的形状,默认值为None,表示生成单个数值。
#dtype: 数据类型,默认值为'l',表示生成整数。
a = np.random.randint(1, 10, size=(3, 2))
print(a)

5、数据类型

NumPy 提供了比 Python 更加丰富的数据类型,如下所示:

序号数据类型语言描述
1bool_布尔型数据类型(True 或者 False)
2int_默认整数类型,类似于 C 语言中的 long,取值为 int32 或 int64
3intc和 C 语言的 int 类型一样,一般是 int32 或 int 64
4intp用于索引的整数类型(类似于 C 的 ssize_t,通常为 int32 或 int64)
5int8代表与1字节相同的8位整数。值的范围是-128到127
6int16代表 2 字节(16位)的整数。范围是-32768至32767
7int32代表 4 字节(32位)整数。范围是-2147483648至2147483647
8int64表示 8 字节(64位)整数。范围是-9223372036854775808至9223372036854775807
9uint81字节(8位)无符号整数
10uint162 字节(16位)无符号整数
11uint324 字节(32位)无符号整数
12uint648 字节(64位)无符号整数
13float_float64 类型的简写
14float16半精度浮点数,包括:1 个符号位,5 个指数位,10个尾数位
15float32单精度浮点数,包括:1 个符号位,8 个指数位,23个尾数位
16float64双精度浮点数,包括:1 个符号位,11 个指数位,52个尾数位
17complex_复数类型,与 complex128 类型相同
18complex64表示实部和虚部共享 32 位的复数
19complex128表示实部和虚部共享 64 位的复数
20str_表示字符串类型,等价于unicode_
21bytes_表示字节串类型,基于字节
22string_表示字节串类型,等价于bytes_,基于字节,NumPy 2.0以后版本被移除,使用bytes_代替
23unicode_表示字节串类型,基于字符,NumPy 2.0以后版本被移除,使用str_`代替

 

5.1数据类型对象

1.可以在创建数组时指定 dtype 参数来定义数组中元素的数据类型。

import numpy as np

# 创建一个 int32 类型的数组
arr_int = np.array([1, 2, 3], dtype=np.int32)
print(arr_int.dtype)  # 输出: int32

# 创建一个 float64 类型的数组
arr_float = np.array([1, 2, 3], dtype=np.float64)
print(arr_float.dtype)  # 输出: float64


arr_str = np.array([1,2,3],dtype=np.string_)
print(arr_str)
#输出:
AttributeError: `np.string_` was removed in the NumPy 2.0 release. Use `np.bytes_` instead.
    
arr_str = np.array([1,2,3],dtype=np.bytes_)
print(arr_str)
#输出:
[b'1' b'2' b'3']

arr_str = np.array([1,2,3],dtype=np.unicode_)
print(arr_str)
# 输出:
AttributeError: `np.unicode_` was removed in the NumPy 2.0 release. Use `np.str_` instead.

arr_str = np.array([1,2,3],dtype=np.str_)
print(arr_str)
# 输出:
['1' '2' '3']

2.可以使用数组的 dtype 属性来获取数组中元素的数据类型。

例如:

 arr = np.array([1, 2, 3])
 print(arr.dtype)  # 输出: int32

3.可以使用 astype() 方法来转换数组中元素的数据类型。

例如:

 arr = np.array([1, 2, 3])
 arr_float = arr.astype(np.float64)
 print(arr_float.dtype)  # 输出: float64

5.2数据类型标识码

NumPy 中每种数据类型都有一个唯一标识的字符码,int8, int16, int32, int64 四种数据类型可以使用字符串 'i1', 'i2','i4','i8' 代替,如下所示:

字符对应类型
b代表布尔型
i带符号整型
u无符号整型
f浮点型
c复数浮点型
m时间间隔(timedelta)
Mdatatime(日期时间)
OPython对象
S,a字节串(S)与字符串(a)
UUnicode
V原始数据(void)

以下是 NumPy 中常见的数据类型标识码及其对应的详细列表:

整数类型

数据类型标识码描述
int8i18 位有符号整数
int16i216 位有符号整数
int32i432 位有符号整数
int64i864 位有符号整数
uint8u18 位无符号整数
uint16u216 位无符号整数
uint32u432 位无符号整数
uint64u864 位无符号整数

浮点数类型

数据类型标识码描述
float16f216 位浮点数(半精度)
float32f432 位浮点数(单精度)
float64f864 位浮点数(双精度)

复数类型

数据类型标识码描述
complex64c864 位复数(单精度)
complex128c16128 位复数(双精度)

布尔类型

数据类型标识码描述
boolb1布尔类型

字符串类型

数据类型标识码描述
bytesS10长度为 10 的字节串
strU10长度为 10 的 Unicode 字符串

Python 对象类型

数据类型标识码描述
OOPython 对象类型

例如:自定义一个int32的数据类型

 dt=np.dtype('i4')
 data = np.array([1,2,3,4],dtype=dt)
 print(data)   #输出:[1 2 3 4]
 print(data.dtype)   #输出:int32
 ​

可以自定义复杂的数据结构:

 dt=np.dtype([('name','S10'),('age','i4')])
 data = np.array([('zhangsan',20),('lisi',21)],dtype=dt)
 print(data)         #输出:[(b'zhangsan', 20) (b'lisi', 21)]
 print(data.dtype)   #输出:[('name', 'S10'), ('age', '<i4')]

说明:

在编程中,字节序标记用于指定数据的字节顺序。常见的字节序标记包括:

  • <: 小端序,数据的最低有效字节存储在内存的最低地址,而最高有效字节存储在内存的最高地址。

  • >: 大端序,数据的最高有效字节存储在内存的最低地址,而最低有效字节存储在内存的最高地址。

6、数组属性

6.1数组维度

数组的维度就是一个数组中的某个元素,当用数组下标表示的时候,需要用几个数字来表示才能唯一确定这个元素,这个数组就是几维

ndmin 是 NumPy 中用于创建数组时指定最小维度的参数。它通常在 numpy.array() 函数中使用。通过 ndmin,你可以确保生成的数组至少具有指定的维度。

ndim 是 NumPy 数组的一个属性,用于返回数组的维度数(即数组的秩)。它表示数组有多少个维度。

import numpy as np

#数组维度
arr = np.array([[1, 2, 3], [4, 5, 6]])
print(arr.shape) #输出(2, 3)
print(arr.ndim) #输出2

6.2 shape

返回数组的形状,即各维度大小的元组。

返回一个元组,元组中的每个元素表示数组在对应维度上的大小。元组的长度等于数组的维度数。

shape 属性功能:

  1. 返回一个由数组维度构成的元组

  2. 通过赋值,可以用来调整数组维度的大小

import numpy as np

#shape:返回数组的形状,即各维度大小的元组。
a = np.array([[1,2,3],[4,5,6]])
print("a=",a)
print("a的形状为:",a.shape)

a.shape = (3,2) #修改数组的形状
print('a修改后的形状为:',a.shape)
print('a修改后的数组为:')
print(a)


a= [[1 2 3]
#  [4 5 6]]
# a的形状为: (2, 3)
# a修改后的形状为: (3, 2)
# a修改后的数组为:
# [[1 2]
#  [3 4]
#  [5 6]]

shape属性修改数组的形状,则修改的是原数组的形状,

reshape修改数组的形状会返回一个新数组,不修改原数组的形状。

6.3 flags

  1. 返回 ndarray 数组的内存信息

import numpy as np

#flags:
a = np.array([[1,2,3],[4,5,6],[7,8,9]])
print(a.flags)

  # C_CONTIGUOUS : True
  # F_CONTIGUOUS : False
  # OWNDATA : True
  # WRITEABLE : True
  # ALIGNED : True
  # WRITEBACKIFCOPY : False

7、切片

ndarray 对象的内容可以通过索引或切片来访问和修改,与 Python 中 list 的切片操作一样;

在 Python 中,slice 可以作为一个对象来使用。你可以创建一个 slice 对象,然后使用它来获取序列的片段。

参数:

  • start 是切片开始的位置(包含该位置)。

  • stop 是切片结束的位置(不包含该位置)。

  • step 是切片的步长,即选取元素的间隔。

一维:

#切片
#切片操作可以从数组中提取一部分元素,并生成一个新的数组。
#语法:array[start:end:step]
#start:起始索引,默认为0
#end:结束索引,默认为数组长度
#step:步长,默认为1

#1. 切片操作
#从数组中提取一部分元素,并生成一个新的数组。


#创建一个数组
a = np.arange(10)
print(a)

#使用切片操作提取数组的前5个元素
b = a[:5]
print(b)

#使用切片操作提取数组的后5个元素
c = a[-5:]
print(c)

#2. 步长
#step参数可以指定切片的步长,可以提取数组的子集。
print(a[0:10:2]) #[0 2 4 6 8]

多维: 


import numpy as np

#切片
#多维
b = np.array([[1,2,3],[4,5,6],[7,8,9]])
print(b)
print("*************")
print(b[1,...]) #提取第2行的所有元素
print("*************")
print(b[...,1]) #提取第2列的所有元素
print("*************")
print(b[0:2,1:3]) #提取第1行到第2行,第2列到第3列的元素

 8、高级索引

8.1 整数数组索引

整数数组索引是指使用一个数组来访问另一个数组的元素。这个数组中的每个元素都是目标数组中某个维度上的索引值。

适用于需要访问非连续元素或特定位置元素的场景。

注意:返回的新数组是一个副本,修改它不会影响原数组。

 

import numpy as np

#整数数组索引
#创建数组
arr = np.array([1, 2, 3, 4, 5])
#索引数组
index = np.array([0, 2, 4]) #索引数组,
#使用索引数组获取数组元素
result = arr[index] #获取索引数组对应的元素,获取数组arr的索引为0,2,4对应的元素
print(result) #输出[1 3 5]
print(arr[[1,2,4]]) #输出[2 3 5]
import numpy as np

#整数数组索引
#创建数组
a = np.array([[1,2,3], [4,5,6], [7,8,9]])

print(a[[0,1,2],[0,1,2]]) 
#[0,1,2]代表行索引
# [0,1,2]代表列索引
#取出索引坐标为(0,0),(1,1),(2,2)的元素
#输出[1,5,9]

8.2布尔索引

布尔索引通过布尔运算(如:比较运算符)来获取符合指定条件的元素的数组。

import numpy as np

# 布尔索引
a = np.array([1, 2, 3, 4, 5])
b = np.array([True, False, True, False, True])
c = a[b]
print(c)  # [1 3 5]

x = a>3
print(x)  # [False False False  True  True]
print(a[x])  # [4 5]


a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(a>3)
print(a[a > 3])  # 输出[4 5 6 7 8 9]

arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

# 1. 索引第3个元素大于3的所有行
print(arr[arr[:, 2] > 3])
print("*************")
# 2. 索引第2行 值大于3 的所有的元素 所在的列
print(arr[:,arr[1] > 3]) 

 

9、广播(*)

广播(Broadcast)是 numpy 对不同形状(shape)的数组进行数值计算的方式, 对数组的算术运算通常在相应的元素上进行。这要求维数相同,且各维度的长度相同,如果不相同,可以通过广播机制,这种机制的核心是对形状较小的数组,在横向或纵向上进行一定次数的重复,使其与形状较大的数组拥有相同的维度。

广播规则

  1. 维度匹配:如果两个数组的维度数不同,维度数较少的数组会在前面补上长度为 1 的维度。

    import numpy as np
    
    # 示例 1:维度匹配
    a = np.array([[1, 2, 3], [4, 5, 6]])  # 形状: (2, 3)
    b = np.array([10, 20, 30])  # 形状: (3,)
    c = a + b
    print(c)
    # 输出:
    # [[11 22 33]
    #  [14 25 36]]

  2. 形状匹配:如果两个数组在某个维度上的长度不同,但其中一个数组在该维度上的长度为 1,则该数组会沿着该维度进行广播。

    import numpy as np
    
    # 示例 2:形状匹配
    # 1.d是2维数组,e是一维数组,e自动广播为2为数组:[[10 20 30] [10 20 30]],形状为(2,3)
    # 2.d和e在行维度上都为2,d在列维度上是一维,自动广播为:[[1 1 1] [2 2 2]],形状为(2,3)
    d = np.array([[1], [2]]) # 形状: (2, 1)
    e = np.array([10, 20, 30]) # 形状: (3,)
    f = d + e
    print(f)  # 输出: [[11 21 31] [12 22 32]] 
    print(f)
    # 输出:
    # [[11 21 31]
    #  [12 22 32]] 

  3. 不匹配:如果两个数组在某个维度上的长度既不相同也不为 1,则广播失败,抛出 ValueError。

10、遍历数组

10.1 遍历数组的第一维度

import numpy as np

#遍历数组
arr = np.array([1, 2, 3, 4, 5])
for i in arr:
    print(i)

# 1
# 2
# 3
# 4
# 5

10.2 nditer逐个访问元素

nditer 是 NumPy 中的一个强大的迭代器对象,用于高效地遍历多维数组。nditer 提供了多种选项和控制参数,使得数组的迭代更加灵活和高效。

控制参数

nditer 提供了多种控制参数,用于控制迭代的行为。

1.order 参数

order 参数用于指定数组的遍历顺序。默认情况下,nditer 按照 C 风格(行优先)遍历数组。

  • C(行优先): order='C'

  • F(列优先): order='F'


import numpy as np

#遍历数组:nditer()函数
arr = np.array([[1,2,3],[4,5,6],[7,8,9]])
for x in np.nditer(arr, order='C'):  # 按行遍历
    print(x)

# 1
# 2
# 3
# 4
# 5
# 6
# 7
# 8
# 9
arr = np.array([[1,2,3],[4,5,6],[7,8,9]])
for x in np.nditer(arr, order='F'):  # 按列遍历
    print(x)


# 1
# 4
# 7
# 2
# 5
# 8
# 3
# 6
# 9

2.flags 参数

flags 参数用于指定迭代器的额外行为。

  • multi_index: 返回每个元素的多维索引。

  • external_loop: 返回一维数组而不是单个元素,减少函数调用的次数,从而提高性能

python的numpy库使用详解 本章介绍python是数组库——numpy的使用。全文14000多字详解,几乎涵盖每个知识点。 阅读详情

相关推荐

Numpy库的安装

Numpy库的安装 一、numpy简介 NumPy是一个功能强大的Python库,主要用于对多维数组执行计算。NumPy提供了大量的库函数和操作,可以帮助程序员轻松地进行数值计算。这类数值计算广泛用于以下任务: **机器学习模型:**在编写机器学习算法时,需要对矩阵进行各种数值计算。例如矩阵乘法、换位、加法等。NumPy提供了一个非常好的库,用于简单(在编写代码方面)和快速(在速度方面)计算。NumPy数组用于存储训练数据和机器学习模型的参数。 **图像处理和计算机图形学:**计算机中的图像表示为多维数字数

m0_62589051的博客 1万+

史上最全详解NumPy库,小白也能看懂的python入门!

NumPy,全称Numerical Python,是一个开源的Python库,它为Python提供了强大的多维数组对象和用于处理这些数组的函数。NumPy的核心是ndarray,它是一个高效的多维数组容器,用于存储和处理大规模的数据。NumPy还提供了许多数学函数,用于数组之间的操作,以及用于线性代数、傅立叶变换和随机数生成等功能。NumPy是Python编程中的一个强大工具,它为处理大规模数据、科学计算和数学建模提供了便捷和高效的方法。

weixin_68789096的博客 1万+

【Python】NumPy库

第一章:NumPy 概览 —— 科学计算的基石1.1 什么是 NumPy?NumPy(Numerical Python 的缩写)是 Python 语言的一个开源扩展程序库,它为 Python 提供了强大的 N 维数组对象()、成熟的函数库,以及用于处理这些数组的工具。NumPy 是 Python 生态系统中科学计算、数据分析和机器学习领域几乎所有高级库(如 Pandas, SciPy, Matplotlib, Scikit-learn, TensorFlow, PyTorch 等)的 foundationa

宅男很神经 1182

数据分析之Numpy模块详解

文章目录1. Numpy数组和Python列表性能对比 1. Numpy数组和Python列表性能对比

自成背后的博客 1万+

python中numpy库介绍

Numpy 1.Numpy是什么? NumPy(Numerical Python的缩写)是一个开源的Python科学计算库。使用NumPy,就可以很自然地使用数组和矩阵。 NumPy包含很多实用的数学函数,涵盖线性代数运算、傅里叶变换和随机数生成等功能。 这个库的前身是1995年就开始开发的一个用于数组运算的库。经过了长时间的发展,基本上成了绝大部分Python科学计算的基础包,当然也包括所有提供Python接口的深度学习框架。 2.为什么使用Numpy? a)便捷: 对于同样的数值计算任务,使用Nu.

wyqwilliam的博客 1579

chatgpt赋能python:Python如何安装NumPy库——详细教程

本文由chatgpt生成,文章没有在chatgpt生成的基础上进行任何的修改。以上只是chatgpt能力的冰山一角。作为通用的Aigc大模型,只是展现它原本的实力。对于颠覆工作方式的ChatGPT,应该选择拥抱而不是抗拒,未来属于“会用”AI的人。🧡AI职场汇报智能办公文案写作效率提升教程 🧡专注于AI+职场+办公方向。下图是课程的整体大纲下图是AI职场汇报智能办公文案写作效率提升教程中用到的ai工具。

liangzijiaa的博客 5150

python下载numpy库_安装numpy库

1.先安装pip:下载地址:http://pypi.python.org/pypi/pip#downloads下载pip-8.1.2.tar.gz(md5,pgp)完成之后,解压到一个文件夹,cmd控制台进入解压目录,输入:python setup.py install安装好pip之后,将C:\Python27\Scripts 添加至环境变量。(一般你windows装python2.7的时候,会自...

weixin_39845406的博客 4704

Python安装NumPy、SciPy、SymPy、StatsModels库

Python安装NumPy、SciPy、SymPy、StatsModels库

weixin_61813938的博客 8657

python怎么安装numpy库-python怎么安装numpy库

NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。Python官网上的发行版是不包含NumPy模块的。(推荐学习:Python视频教程)使用 pip 安装安装NumPy最简单的方法就是使用pip工具:python -m pip install --user numpy scipy matpl...

weixin_37988176的博客 2173

Python系列 之 NumPy库

Python NumPy库学习NumPy库ndarray对象创建ndarray对象ndarray对象的重要属性基本操作通函数 ufunc索引 切片和迭代一维数组的索引切片和迭代多维数组的索引切片和迭代形状操作改变数组形状数组连接 堆叠数组拆分拷贝和视图高级索引 NumPy库 NumPy 是一个运行速度非常快的数学库,主要用于数组计算; NumPy库不在Python的标准模块中,需要先下载NumPy库; 可以使用pip工具下载: pip install numpy 引用NumPy库: import nu

唐僧骑马噔了个噔 5865

告别虚拟机!用ZYNQ7000和PYNQ 2.6.0打造一个能实时识别人脸的“智能摄像头”

本文详细介绍了如何利用Xilinx ZYNQ7000开发板和PYNQ 2.6.0框架构建实时人脸识别系统。通过硬件加速和嵌入式开发技术,该系统实现了低延迟、低功耗的独立运行能力,适用于边缘计算和物联网应用。文章包含从环境搭建到核心功能实现的完整指南,并提供了性能优化和问题排查的实用技巧。

weixin_42543046的博客 391

Python的Numpy库应用入门(超详细教程)

Python第三方库是由Python社区或其他开发者创建并维护的,扩展Python标准库功能的软件包或模块,它们提供了丰富的工具和功能,涵盖了从Web开发到数据科学、机器学习、图像处理等各个领域,使得开发工作更加高效和便捷。

小星袁 9242

数据结构与算法 —— 最短路径Dijkstra算法(迪杰斯特拉)详细图解以及python实现

前两章我们讲到了关于图的基本知识,和广度/深度优先搜索。本章,我们将介绍加权图和最短路径的相关知识。最短路径和最小生成树是图论中常见的问题。最短路径是指在一个图中找到两个节点之间的最短路径,最小生成树是指在一个图中找到一个连通子图,使得所有节点都能够互相到达,且总权值最小。最短路径算法常见的有floyd算法(弗洛伊德算法)和 dijkstra算法(迪杰斯特拉)。本文只介绍dijkstra算法。最短路径运用非常广泛,比如在导航系统中,确定两个地点间哪条路线最短;

‘’ 2万+

Python中Numpy库的学习

创建一个 int32 类型的数组print(arr_int.dtype) # 输出: int32# 创建一个 float64 类型的数组print(arr_float.dtype) # 输出: float64。

m0_68625595的博客 2024

华为防火墙 策略路由实现多ISP接入Internet

PC3上网访问Server1时走ISP1。PC4上网访问Server1时走ISP2。1、配置接口IP并加入相应的安全区域。二、ISP2 运营商 R2路由器。一、ISP1 运营商 R1路由器。

一直被模仿,从未被超越 3015

CH582低功耗实战:从1.2mA降到5uA,我的蓝牙广播功耗优化笔记

本文详细记录了沁恒CH582蓝牙芯片从1.2mA降至5μA的功耗优化全过程。通过建立基准测试环境、分层排查软件配置与IO状态、精细调优射频参数以及硬件层面的电源管理,实现了极致的低功耗表现。文章还提供了实用的功耗测量方法和典型问题排查指南,为蓝牙设备开发者提供了宝贵的参考经验。

weixin_30368405的博客 572

python-PyCharm导入NumPy库

今晚看机器学习实战那本书,看到NumPy那里有点懵,这是啥,什么是NumPy,什么是Python shell开发环境,黑人问号脸。 倒腾了一晚上才明白,我是要导入一个库!通俗的理解就是,这个库有着丰富的数组矩阵运算方法,底层由c编写,python作为编程语言有着代码简单易懂等优点,但是有一个缺点就是运行速度慢,所以有时候需要调用c语言,这样就能拥有python和c的双重有点。所以在大型的矩阵操作...

Vivinia的博客 3万+

方法二:旋转机械动平衡精度计算

本文以实际案例为基础,系统阐述基于ISO 1940标准的动平衡精度G GG等级计算方法。通过角速度转换、许用剩余不平衡量e p e r e_{per}e per ​ 推导及G GG等级公式应用,结合惯性力偶矩、转子质量等参数,得出某转子系统的动平衡精度为G 40 G40G40。文中详细解析了公式原理与参数单位转换要点,并附完整ISO 1940动平衡等级参考表,为工程师提供从理论到实践的完整解决方案。研究结果表明,该方法可有效量化旋转机械的平衡精度,适用于风机、泵类等中低速设备的设计与调试,对提升设备运行

weixin_46153372的博客 922

python-PyCharm导入numpy库

numpy导入 有两种方式可以导入: 第一种:代码块

qq_45898383的博客 9839

手把手教你用C#实现TwinCAT 3 ADS通讯(附完整代码示例)

本文详细解析了如何使用C#实现TwinCAT 3 ADS通讯,包括协议核心价值、开发环境配置、变量通信实践及高级应用场景。通过完整代码示例和性能优化技巧,帮助开发者高效实现工业自动化系统中的实时数据交换,特别适合倍福(Beckhoff)平台用户。

weixin_29230901的博客 117

Python爬虫:爬取拼多多平台商品信息、销量、价格等数据

在本篇博客中,我们将深入探讨如何使用Python爬虫技术爬取拼多多平台的商品信息,包括商品的标题、销量、价格等详细数据。拼多多的商品页面通常是分页展示的,因此我们需要遍历多个页面,获取所有商品的信息。每个商品在拼多多平台上都有一个唯一的商品ID,我们可以通过该ID访问商品页面。通过以上的技术方案和代码示例,你已经掌握了如何使用Python爬虫获取拼多多平台上的商品信息、销量、价格等数据。等技术,解决拼多多平台的反爬虫机制,成功抓取我们所需的商品数据。,我们能够应对拼多多的反爬虫机制,稳定地获取到商品数据。

2201_76125261的博客 3656

python下载numpy库教程_Python库之numpy库的安装教程

一、numpy简介NumPy是一个功能强大的Python库,主要用于对多维数组执行计算。NumPy这个词来源于两个单词-- Numerical和Python。NumPy提供了大量的库函数和操作,可以帮助程序员轻松地进行数值计算。这类数值计算广泛用于以下任务:1.机器学习模型:在编写机器学习算法时,需要对矩阵进行各种数值计算。例如矩阵乘法、换位、加法等。NumPy提供了一个非常好的库,用于简单(在编...

weixin_42499882的博客 3475

C#实战大华智能安防系统:从SDK封装到视频流与智能报警的全链路落地

本文将介绍C#集成大华SDK开发安防系统的实战经验,重点解决多路视频预览卡顿和报警延迟问题。文章通过三层架构设计(SDK封装层、业务服务层、应用层)实现解耦,详细分析线程安全封装、高效解码显示和智能事件联动等核心技术。针对16路摄像头同时预览时CPU占用率过高的问题,提出使用子码流拉流与异步解码的优化方案,并总结8个常见开发陷阱的解决方案。文中还提供了大华智能安防系统的完整架构图,展示从设备层到应用层的交互流程,特别强调业务服务层中视频流服务和智能报警服务的核心功能设计。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 432

十大Python库——NumPy

genfromtxt的唯一强制参数是数据的来源,它可以是一个字符串,一串字符串或一个生成器。**NO.**

aobulaien001的博客 1221

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

python的扩展库numpy如何安装_python如何安装numpy库

python如何安装numpy库发布时间:2020-09-23 09:53:03来源:亿速云阅读:83作者:小新这篇文章主要介绍了python如何安装numpy库,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数...

weixin_29522501的博客 3273

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

python的numpy库安装_Python库之numpy库的安装教程

一、numpy简介NumPy是一个功能强大的Python库,主要用于对多维数组执行计算。NumPy这个词来源于两个单词-- Numerical和Python。NumPy提供了大量的库函数和操作,可以帮助程序员轻松地进行数值计算。这类数值计算广泛用于以下任务:1.机器学习模型:在编写机器学习算法时,需要对矩阵进行各种数值计算。例如矩阵乘法、换位、加法等。NumPy提供了一个非常好的库,用于简单(在编...

weixin_36256447的博客 2275

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

上一篇: 正则表达式
下一篇: python数组的操作
M-YM
博客等级 码龄4年 173粉丝 30原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值