第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

NumPy新手入門教程:輕松掌握數(shù)組操作

概述

NumPy是一个强大的Python库,用于处理大型多维数组和矩阵,并提供了丰富的数学函数。本文将详细介绍NumPy的核心功能,包括数组操作、内置函数和线性代数运算等。此外,还将介绍如何安装和导入NumPy库,并演示创建和操作数组的各种方法。通过本文,你将能够轻松掌握NumPy的基本使用技巧。

NumPy新手入门教程:轻松掌握数组操作
NumPy简介

什么是NumPy

NumPy(Numerical Python的简称)是一个Python的开源库,用于处理大型多维数组与矩阵,并提供了大量用于数组操作的数学函数。NumPy是Python科学计算的基础库之一,广泛应用于数据分析、科学计算等领域。NumPy不仅提供了高效的数组对象,还提供了一系列的数学计算功能,例如线性代数、傅里叶变换、随机数生成等。

NumPy的主要特点

  1. 数组对象:NumPy的核心是ndarray,即n维数组对象。ndarray对象可以进行各种数学运算、切片、选择及形状变换。NumPy中的数组对象可以高效地处理大量数据。

  2. 内置函数:NumPy提供了大量的内置函数,如sincosexp等,这些函数可以应用于整个数组,并且它们通常比纯Python实现更快。

  3. 广播机制:NumPy支持广播机制,即不同的数组间可以进行操作,即使它们的形状和大小不同,也能进行运算。

  4. 线性代数运算:NumPy提供了用于矩阵操作的线性代数函数,例如矩阵乘法、逆矩阵、行列式等。

  5. 随机数生成:NumPy支持生成各种分布的随机数,如正态分布、泊松分布等,这对于模拟和机器学习非常有用。

安装与导入NumPy

要开始使用NumPy,首先需要安装NumPy库。可以通过Python的包管理工具pip来安装NumPy。

pip install numpy

安装完成后,可以通过import语句导入NumPy库。

import numpy as np
创建NumPy数组

一维数组的创建

一维数组是一行数据的集合,可以通过np.array()函数直接创建。

import numpy as np

array_1d = np.array([1, 2, 3])
print(array_1d)

输出:

[1 2 3]

二维数组的创建

二维数组是一个表格形式的数据集合,可以通过嵌套列表或直接使用np.array()函数创建。

import numpy as np

array_2d = np.array([[1, 2, 3], [4, 5, 6]])
print(array_2d)

输出:

[[1 2 3]
 [4 5 6]]

生成特定模式的数组

NumPy提供了多种函数来创建具有特定模式的数组。

使用arange()创建数组

arange()函数类似于Python的range()函数,可以生成一个指定范围内的数组。

import numpy as np

array_arange = np.arange(0, 5)
print(array_arange)

输出:

[0 1 2 3 4]

使用linspace()创建数组

linspace()函数用于创建一个指定数量的等间距的数组。

import numpy as np

array_linspace = np.linspace(0, 1, 5)
print(array_linspace)

输出:

[0.   0.25 0.5  0.75 1.  ]

使用zeros()、ones()和empty()创建数组

import numpy as np

# 使用zeros()创建数组
array_zeros = np.zeros((2, 3))
print(array_zeros)

# 使用ones()创建数组
array_ones = np.ones((2, 3))
print(array_ones)

# 使用empty()创建数组
array_empty = np.empty((2, 3))
print(array_empty)

输出:

[[0. 0. 0.]
 [0. 0. 0.]]
[[1. 1. 1.]
 [1. 1. 1.]]
[[0. 0. 0.]
 [0. 0. 0.]]
数组的基本操作

数组索引与切片

NumPy数组支持和Python列表类似的索引和切片操作。

索引

import numpy as np

array_1d = np.array([1, 2, 3, 4, 5])
print(array_1d[0])

输出:

1

切片

import numpy as np

array_1d = np.array([1, 2, 3, 4, 5])
print(array_1d[1:4])

输出:

[2 3 4]

数组的赋值与修改

NumPy数组支持直接赋值和修改操作。

import numpy as np

array_1d = np.array([1, 2, 3, 4, 5])
array_1d[0] = 10
print(array_1d)

输出:

[10 2 3 4 5]

数组的形状与维度

NumPy数组的形状可以通过shape属性进行查看和修改。

import numpy as np

array_2d = np.array([[1, 2, 3], [4, 5, 6]])
print(array_2d.shape)

输出:

(2, 3)

可以通过reshape()函数改变数组的形状。

import numpy as np

array_1d = np.array([1, 2, 3, 4, 5, 6])
array_reshape = array_1d.reshape((2, 3))
print(array_reshape)

输出:

[[1 2 3]
 [4 5 6]]
数组的运算

基本算术运算

NumPy数组支持各种算术运算,如加减乘除等。

import numpy as np

array_a = np.array([1, 2, 3])
array_b = np.array([4, 5, 6])
print(array_a + array_b)
print(array_a - array_b)
print(array_a * array_b)
print(array_a / array_b)

输出:

[5 7 9]
[-3 -3 -3]
[ 4 10 18]
[0.25 0.4  0.5 ]

通用函数

NumPy提供了一系列的通用函数,用于进行数组的逐元素操作。

import numpy as np

array_square = np.array([1, 2, 3, 4])
print(np.square(array_square))
print(np.sqrt(array_square))

输出:

[ 1  4 9 16]
[1.         2.         1.73205081 2.        ]

数组之间的运算

数组之间可以进行各种数学运算,如矩阵乘法、点积等。

import numpy as np

array_a = np.array([[1, 2], [3, 4]])
array_b = np.array([[5, 6], [7, 8]])
print(np.dot(array_a, array_b))

输出:

[[19 22]
 [43 50]]
数组的排序与统计

数组排序

NumPy提供了多种排序函数,如sort()argsort()等。

import numpy as np

array_sort = np.array([3, 1, 2])
print(np.sort(array_sort))

输出:

[1 2 3]

常见统计函数

NumPy提供了丰富的统计函数,如mean()sum()min()max()等。

import numpy as np

array_stat = np.array([1, 2, 3, 4, 5])
print(np.mean(array_stat))
print(np.sum(array_stat))
print(np.min(array_stat))
print(np.max(array_stat))

输出:

3.0
15
1
5

数组的搜索与计数

NumPy提供了多种搜索和计数函数,如where()count_nonzero()等。

import numpy as np

array_search = np.array([1, 0, 3, 0, 5])
print(np.where(array_search > 2))
print(np.count_nonzero(array_search > 2))

输出:

(array([2, 4], dtype=int64),)
2
数组的高级操作

数组的转置与重塑

NumPy提供了transpose()reshape()函数来进行数组的转置和重塑。

import numpy as np

array_transpose = np.array([[1, 2, 3], [4, 5, 6]])
print(array_transpose.transpose())

输出:

[[1 4]
 [2 5]
 [3 6]]
import numpy as np

array_reshape = np.array([1, 2, 3, 4, 5, 6])
print(array_reshape.reshape((2, 3)))

输出:

[[1 2 3]
 [4 5 6]]

数组的拼接与分割

NumPy提供了concatenate()split()函数来进行数组的拼接和分割。

import numpy as np

array_a = np.array([[1, 2], [3, 4]])
array_b = np.array([[5, 6], [7, 8]])
print(np.concatenate((array_a, array_b), axis=0))
print(np.concatenate((array_a, array_b), axis=1))

输出:

[[1 2]
 [3 4]
 [5 6]
 [7 8]]
[[1 2 5 6]
 [3 4 7 8]]
import numpy as np

array_split = np.array([1, 2, 3, 4, 5, 6])
print(np.split(array_split, 2))

输出:

[array([1, 2, 3]), array([4, 5, 6])]

数组的广播机制

NumPy的广播机制使得不同形状的数组可以进行运算。广播的基本规则是:

  1. 对于两个数组,如果它们的维度不相同,则在前面添加1。
  2. 比较每一个维度,如果它们相等或者一个为1,则此维度的大小相同。
  3. 若满足上述条件,不匹配的维度的大小不同的数组会被复制以匹配较大的维度大小。
  4. 如果不满足上述条件,则数组的形状不兼容,不能进行运算。
import numpy as np

array_a = np.array([1, 2, 3])
array_b = np.array([[4], [5], [6]])
print(array_a + array_b)

输出:

[[5 6 7]
 [6 7 8]
 [7 8 9]]

以上是NumPy新手入门教程的全部内容,希望你能够通过本教程轻松掌握NumPy数组的操作。如果你需要进一步学习,可以参考官方文档,也可以在慕课网(http://idcbgp.cn/)找相关的课程

點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評論
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊有機(jī)會得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號

舉報

0/150
提交
取消