当前位置: 首页 > news >正文

长春网站建设建站系统百度商业平台

长春网站建设建站系统,百度商业平台,java ee网站开发,天津做不锈钢的网站目录 一、前言 二、实验环境 三、NumPy 0、多维数组对象(ndarray) 1. 多维数组的属性 1、创建数组 2、数组操作 1. 索引和切片 a. 索引 b. 切片 2. 形状操作 a. 获取数组形状 b. 改变数组形状 c. 展平数组 3. 转置操作 a. 使用.T属性 b…

目录

一、前言

二、实验环境

三、NumPy

0、多维数组对象(ndarray)

1. 多维数组的属性

1、创建数组

2、数组操作

1. 索引和切片

a. 索引

b. 切片

2. 形状操作

a. 获取数组形状

b. 改变数组形状

c. 展平数组

3. 转置操作

a. 使用.T属性

b. 使用transpose()函数

4. 拼接操作

np.concatenate()函数

np.vstack()函数

np.hstack()函数


一、前言

        Python是一种高级编程语言,由Guido van Rossum于1991年创建。它以简洁、易读的语法而闻名,并且具有强大的功能和广泛的应用领域。Python具有丰富的标准库和第三方库,可以用于开发各种类型的应用程序,包括Web开发、数据分析、人工智能、科学计算、自动化脚本等。

        Python本身是一种伟大的通用编程语言,在一些流行的库(numpy,scipy,matplotlib)的帮助下,成为了科学计算的强大环境。本系列将介绍Python编程语言和使用Python进行科学计算的方法,主要包含以下内容:

  • Python:基本数据类型、容器(列表、元组、集合、字典)、函数、类
  • Numpy:数组、索引和切片、数组数学、广播
  • Matplotlib:绘图,子图,图像
  • IPython:创建笔记本,典型工作流程

二、实验环境

numpy1.21.6
python3.7.16
  • 运行下述命令检查Python版本
 python --version 
  • 运行下述代码检查Python、NumPy版本
import sys
import numpy as npprint("Python 版本:", sys.version)
print("NumPy 版本:", np.__version__)

三、NumPy

        NumPy(Numerical Python)是一个用于科学计算的Python库。它提供了一个强大的多维数组对象(ndarray),用于进行高效的数值运算和数据处理。Numpy的主要功能包括:

  1. 多维数组:Numpy的核心是ndarray对象,它是一个多维数组,可以存储同类型的元素。这使得Numpy非常适合处理向量、矩阵和其他多维数据结构。

  2. 数学函数:Numpy提供了许多常用的数学函数,如三角函数、指数函数、对数函数等。这些函数可以直接应用于整个数组,而无需编写循环。

  3. 广播(Broadcasting):Numpy支持不同形状的数组之间的运算,通过广播机制,可以对形状不同的数组进行逐元素的操作,而无需显式地编写循环。

  4. 线性代数运算:Numpy提供了丰富的线性代数运算函数,如矩阵乘法、求解线性方程组、特征值计算等。

  5. 随机数生成:Numpy包含了用于生成各种概率分布的随机数的函数,如均匀分布、正态分布、泊松分布等。

  6. 数据操作:Numpy提供了很多用于操作数组的函数,如切片、索引、排序、去重等。

        Numpy广泛应用于科学计算、数据分析、机器学习等领域。它的高效性和便捷性使得它成为Python数据科学生态系统中不可或缺的组成部分。

0、多维数组对象(ndarray)

        NumPy的ndarray对象是NumPy库中最重要的对象之一,也是进行科学计算的核心数据结构。ndarray代表了一个多维的数组,可以存储相同类型的元素。

1. 多维数组的属性

  • ndarray.shape:返回表示数组形状的元组,例如(2, 3)表示2行3列的数组。
  • ndarray.dtype:返回数组中元素的数据类型,例如intfloatbool等。
  • ndarray.ndim:返回数组的维度数,例如1表示一维数组,2表示二维数组。

1、创建数组

【深度学习】 Python 和 NumPy 系列教程(九):NumPy详解:1、创建数组的n种方式_QomolangmaH的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_63834988/article/details/132782221?spm=1001.2014.3001.5502

2、数组操作

1. 索引和切片

  • a. 索引

    • 使用整数索引:可以使用整数索引访问数组中的特定元素。例如,arr[0]将返回数组arr中的第一个元素。
    • 使用布尔索引:可以使用布尔数组作为索引来选择满足特定条件的元素。例如,arr[arr > 5]将返回数组arr中大于5的元素。
    • 使用多维索引:对于多维数组,可以使用多个整数或布尔索引来访问特定的元素。例如,arr[0, 1]将返回多维数组arr中第一行第二列的元素。
import numpy as nparr = np.array([1, 2, 3, 4, 5])# 整数索引
print(arr[0])  # 输出:1# 布尔索引
print(arr[arr > 3])  # 输出:[4, 5]# 多维索引
arr = np.array([[1, 2, 3], [4, 5, 6]])
print(arr[0, 1])  # 输出:2

  • b. 切片

    • 使用基本切片:可以使用基本切片表示法从数组中获取连续的子数组。例如,arr[1:5]将返回数组arr中索引为1到4的元素。
    • 使用步长切片:可以使用步长切片表示法从数组中获取间隔的子数组。例如,arr[1:5:2]将返回数组arr中索引为1、3的元素。
    • 使用省略号切片:对于多维数组,可以使用省略号(...)表示连续的切片。例如,arr[..., 1]将返回多维数组arr中的第二列。
    • 使用负数索引和切片:可以使用负数索引和切片来从数组的末尾开始访问元素。例如,arr[-1]将返回数组arr中的最后一个元素。
import numpy as nparr = np.array([1, 2, 3, 4, 5])# 基本切片
print(arr[1:4])  # 输出:[2, 3, 4]# 步长切片
print(arr[1:5:2])  # 输出:[2, 4]# 省略号切片
arr = np.array([[1, 2, 3], [4, 5, 6]])
print(arr[..., 1])  # 输出:[2, 5]# 负数索引和切片
print(arr[-1])  # 输出:[4, 5, 6]

2. 形状操作

a. 获取数组形状

b. 改变数组形状

c. 展平数组

import numpy as nparr = np.array([[1, 2, 3], [4, 5, 6]])# 获取数组形状
print(arr.shape)  # 输出:(2, 3)# 改变数组形状
reshaped_arr = arr.reshape((3, 2))
print(reshaped_arr)
# 输出:
# [[1 2]
#  [3 4]
#  [5 6]]# 展平数组
flattened_arr = arr.flatten()
print(flattened_arr)  # 输出:[1 2 3 4 5 6]

3. 转置操作

        数组转置操作是指将数组的行和列互换的操作,转置操作对于处理二维数组特别有用,例如在矩阵运算和线性代数中经常需要对数组进行转置。

a. 使用.T属性

        在NumPy中,多维数组对象(ndarray)具有一个名为.T的属性,可以用于进行转置操作。该属性返回原始数组的转置结果,即行变为列,列变为行。

import numpy as nparr = np.array([[1, 2, 3], [4, 5, 6]])
transposed_arr = arr.T
print(transposed_arr)

输出:

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

b. 使用transpose()函数

        另一种实现数组转置的方法是使用np.transpose()函数。该函数接受一个多维数组作为参数,并返回其转置结果。

import numpy as nparr = np.array([[1, 2, 3], [4, 5, 6]])
transposed_arr = np.transpose(arr)
print(transposed_arr)

输出:

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

4. 拼接操作

        数组拼接操作是指将多个数组按照指定的方式进行连接的操作。

np.concatenate()函数

        np.concatenate()函数用于沿指定的轴连接数组。可以沿着现有的轴连接两个或多个数组,也可以指定axis参数来创建一个新的轴。np.concatenate()`函数将`arr1`和`arr2`沿着行方向(`axis=0`)进行了拼接:

import numpy as nparr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6]])# 沿行方向拼接数组
concatenated_arr = np.concatenate((arr1, arr2), axis=0)
print(concatenated_arr)

 输出:

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

np.vstack()函数

        np.vstack()函数用于垂直拼接(按行堆叠)两个或多个数组。它将输入的数组沿着垂直方向堆叠起来,生成一个新的数组。

import numpy as nparr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6]])# 垂直拼接数组
vstack_arr = np.vstack((arr1, arr2))
print(vstack_arr)

输出:

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

np.hstack()函数

        np.hstack()函数用于水平拼接(按列堆叠)两个或多个数组。它将输入的数组沿着水平方向堆叠起来,生成一个新的数组。

import numpy as nparr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6]])# 水平拼接数组
hstack_arr = np.hstack((arr1, arr2.T))

输出:

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

http://www.hkea.cn/news/611605/

相关文章:

  • 网站根目录文件名游戏推广员是做什么的
  • 个体工商户怎么做网站西安网站seo技术
  • 报名网站制作2345网址导航官网下载安装
  • 图书购物网站开发总结百度发广告需要多少钱
  • 做网站 业务流程图站长统计性宝app
  • 长沙做网站大概多少钱万网域名注册教程
  • 成都网站建设网站产品推广计划书怎么写
  • 深圳个人网站建设大连网络推广公司哪家好
  • 建设工程教育appseo技术培训中心
  • 家教中介怎么利用网站来做的免费广告推广
  • wordpress仿制建设seo是什么平台
  • 商城网站建设分为几块seo臻系统
  • 网络营销对于个人而言有什么作用seo文章
  • 做书籍封皮的网站今日中国新闻
  • 东莞建设网站电工培训技术学校
  • 深圳聘请做网站人员成都排名seo公司
  • 网站备案之后东莞网站关键词优化公司
  • 多种专业网站建设潍坊网站排名提升
  • 网站投稿系统怎么做网站制作流程是什么
  • 交警网站建设整改百度推广怎么推广
  • 重庆网站建设哪里比较好呢网站下载
  • 网站运行速度慢的原因看b站二十四小时直播间
  • 电商网站开发服务全网营销骗局揭秘
  • 个人网站怎么做互联网营销师培训课程免费
  • 微信网站建设价格网站开发报价方案
  • wordpress utc时间慢8小时大连seo关键词排名
  • 中国建设承包商网站创建软件平台该怎么做
  • 中小企业网站建设费用海外推广服务
  • 企业名称的英文做网站名seo是怎么优化推广的
  • 手机在线建站西安seo服务公司