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

最个人网站快速排名优化推广价格

最个人网站,快速排名优化推广价格,南京营销型网站制作,施工企业如何发展新质生产力一、NumPy 简介 1.1 NumPy 特性 高性能科学计算库:专为处理多维数组设计,底层用 C 语言实现,运算速度远超 Python 原生列表。 矢量运算:支持批量数据操作,避免显式循环,代码更简洁高效。 广播机制&…

一、NumPy 简介

1.1 NumPy 特性

  • 高性能科学计算库:专为处理多维数组设计,底层用 C 语言实现,运算速度远超 Python 原生列表。
  • 矢量运算:支持批量数据操作,避免显式循环,代码更简洁高效。
  • 广播机制:自动处理不同形状数组间的运算。
  • 丰富函数库:包含线性代数、傅里叶变换、随机数等功能。

1.2 应用场景

  • 数据分析:处理大规模结构化数据。
  • 机器学习:作为 TensorFlow/PyTorch 等框架的底层支持。
  • 科学计算:物理模拟、统计学分析。
  • 图像处理:多维数组表示像素数据。

1.3 安装与导入

pip install numpyimport numpy as np

二、NumPy 基础 —— 数组对象

2.1 数组与列表对比

特性

NumPy 数组 (ndarray)

Python 列表 (list)

数据类型

元素类型必须一致

可包含任意类型元素

内存存储

连续内存空间,访问速度快

非连续存储,访问较慢

运算效率

支持向量化运算,速度快

需显式循环,速度慢

维度支持

支持 n 维数组

仅支持一维结构

2.2 创建数组的四种方式

方法

语法

示例

np.array()

从列表 / 元组创建

arr1 = np.array([10, 20, 30, 40])

np.arange()

生成等差数列

arr2 = np.arange(0, 10, 2)

np.random

生成随机数组

arr3 = np.random.random((2, 3))

特殊函数

zeros/ones/full/eye

arr_zeros = np.zeros((3, 3))

代码示例
通过np.array创建数组
import numpy as np
a = np.array([1, 2, 3, 4])
print(a)  # 输出结果: [1 2 3 4]
通过np.arange创建数组
import numpy as np
a = np.arange(0, 10, 2)  # 创建0-10,步数为2的数组
print(a)  # 输出结果: [0 2 4 6 8]
通过np.random.random创建数组
import numpy as np
a = np.random.random((2, 3))
print(a)  # 输出类似于: [[0.04631855 0.21257259 0.73199394]#          [0.59865848 0.15601864 0.15599452]]
通过特殊函数创建数组
import numpy as np
array_zeros = np.zeros((3, 3))  # 3行3列全零数组
array_ones = np.ones((4, 4))   # 4行4列全一数组
array_full = np.full((2, 3), 9)  # 值为9的2行3列数组
array_eye = np.eye(4)  # 生成一个在斜方形上元素为1,其他元素都为0的4行4列矩阵
print(array_zeros)  # 输出: [[0. 0. 0.]#               [0. 0. 0.]#               [0. 0. 0.]]
print(array_ones)  # 输出: [[1. 1. 1. 1.]#               [1. 1. 1. 1.]#               [1. 1. 1. 1.]#               [1. 1. 1. 1.]]
print(array_full)  # 输出: [[9 9 9]#                [9 9 9]]
print(array_eye)  # 输出: [[1. 0. 0. 0.]#               [0. 1. 0. 0.]#               [0. 0. 1. 0.]#               [0. 0. 0. 1.]]

三、数组数据类型

3.1 核心数据类型

类型

描述

标识符

示例

bool

布尔值

b

True/False

int8

1 字节整数

i1

-128~127

int32

4 字节整数

i4

-2147483648~2147483647

float16

半精度浮点数

f2

16 位,精度约 3 位小数

float64

双精度浮点数

f8

标准浮点数

object

Python 对象

O

存储类实例等

3.2 类型操作

查询数据类型

import numpy as npclass Person:  # 定义Person类def __init__(self, name, age):self.name = nameself.age = agezs = Person('张三', 18)  # 产生对象
ls = Person('李四', 20)
d = np.array([zs, ls])
print(d)  # 输出: [__main__.Person object at 0x00000176CB4F2208 __main__.Person object at 0x00000176CB4F2288]
print(d.dtype)  # 输出: dtype('O')

创建数组指定数据类型

import numpy as np
a = np.array([1, 2, 3, 4, 5], dtype='int32')  # 使用dtype指定创建数组的数据类型
print(a)  # 输出结果: [1 2 3 4 5]
print(a.dtype)  # 输出: int32

修改数据类型

import numpy as np
a = np.array([1, 2, 3, 4, 5])
f = a.astype('float16')  # 使用astype改变数组的数据类型
print(f.dtype)  # 输出结果: float16

四、多维数组操作

4.1 维度与形状

数组

维度 (ndim)

形状 (shape)

含义

[1,2,3]

1

(3,)

一维数组,3 个元素

[[1,2],[3,4]]

2

(2,2)

2 行 2 列二维数组

[[[1,2],[3,4]],[[5,6],[7,8]]]

3

(2,2,2)

3 维数组,2 个 2x2 矩阵

4.2 基本操作

数组维度查询

import numpy as np
a1 = np.array([1, 2, 3])
a2 = np.array([[1, 2, 3], [4, 5, 6]])
a3 = np.array([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]])
print(a1.ndim)  # 输出: 1
print(a2.ndim)  # 输出: 2
print(a3.ndim)  # 输出: 3

数组形状查询

import numpy as np
a1 = np.array([1, 2, 3])
a2 = np.array([[1, 2, 3], [4, 5, 6]])
a3 = np.array([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]])
print(a1.shape)  # 输出: (3,)
print(a2.shape)  # 输出: (2, 3)
print(a3.shape)  # 输出: (2, 2, 3)

修改数组形状

import numpy as np
a1 = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]])
a2 = a1.reshape((2, 6))  # reshape是将数组转换成指定的形状,然后返回转换后的结果,原数组的形状不会发生改变
print(a2)  # 输出: [[ 1  2  3  4  5  6]#          [ 7  8  9 10 11 12]]
print(a1.shape)  # 输出: (4, 3)
a1.resize((4, 3))  # resize是将数组转换成指定的形状,会直接修改数组本身,并且不会返回任何值
print(a1)  # 输出: [[1 2 3]#          [4 5 6]#          [7 8 9]#          [10 11 12]]

通过特殊函数创建数组

import numpy as np
array_zeros = np.zeros((3, 3))  # 3行3列全零数组
array_ones = np.ones((4, 4))   # 4行4列全一数组
array_full = np.full((2, 3), 9)  # 值为9的2行3列数组
array_eye = np.eye(4)  # 生成一个在斜方形上元素为1,其他元素都为0的4行4列矩阵
print(array_zeros)  # 输出: [[0. 0. 0.]#               [0. 0. 0.]#               [0. 0. 0.]]
print(array_ones)  # 输出: [[1. 1. 1. 1.]#               [1. 1. 1. 1.]#               [1. 1. 1. 1.]#               [1. 1. 1. 1.]]
print(array_full)  # 输出: [[9 9 9]#                [9 9 9]]
print(array_eye)  # 输出: [[1. 0. 0. 0.]#               [0. 1. 0. 0.]#               [0. 0. 1. 0.]#               [0. 0. 0. 1.]]

4.3 素组索引

下标索引

import numpy as np
a = np.arange(6)  # 一维数组
print(a)  # 输出: [0 1 2 3 4 5]
print(a[2])  # 输出: 2
print(a[-2])  # 输出: 4(从后往前数第2个)a = np.arange(9).reshape(3, 3)  # 二维数组
print(a)  # 输出: [[0 1 2]#          [3 4 5]#          [6 7 8]]
print(a[0][1])  # 输出: 1
print(a[0, 1])  # 输出: 1

切片索引

import numpy as np
a = np.arange(6)  # 一维数组
print(a)  # 输出: [0 1 2 3 4 5]
print(a[1:5])  # 输出: [1 2 3 4]
print(a[1:5:2])  # 输出: [1 3]
print(a[::2])  # 输出: [0 2 4]
print(a[::-1])  # 输出: [5 4 3 2 1 0]a = np.arange(9).reshape(3, 3)  # 二维数组
print(a)  # 输出: [[0 1 2]#          [3 4 5]#          [6 7 8]]
print(a[1:3, 1:2])  # 输出: [[4]#               [7]]
print(a[1, :])  # 输出: [3 4 5]
print(a[1, ...])  # 输出: [3 4 5]
print(a[:, 1])  # 输出: [1 4 7]

花式索引

import numpy as np
a = np.arange(6)  # 一维数组
print(a)  # 输出: [0 1 2 3 4 5]
print(a[[1, 2, 5]])  # 输出: [1 2 5]
print(a[np.array([(0, 1, 3), (1, 4, 5)])])  # 输出: [[0 1 3]#                [1 4 5]]a = np.arange(9).reshape(3, 3)  # 二维数组
print(a)  # 输出: [[0 1 2]#          [3 4 5]#          [6 7 8]]
print(a[[1, 0]])  # 输出: [[3 4 5]#                [0 1 2]]
print(a[[0, 2], 1])  # 输出: [1 7]
print(a[np.ix_([0, 1], [0, 1])])  # 输出: [[0 1]#                [3 4]]

布尔索引

import numpy as np
a = np.arange(6)  # 一维数组
print(a)  # 输出: [0 1 2 3 4 5]
print(a > 3)  # 输出: [False False False False  True  True]
print(a[a > 3])  # 输出: [4 5]a = np.arange(9).reshape(3, 3)  # 二维数组
print(a)  # 输出: [[0 1 2]#          [3 4 5]#          [6 7 8]]
print(a > 3)  # 输出: [[False False False]#               [False  True  True]#               [ True  True  True]]
print(a[a > 3])  # 输出: [4 5 6 7 8]

http://www.dtcms.com/wzjs/265692.html

相关文章:

  • 网站代码跑偏了怎么做黄石seo
  • 微信小店可以做分类网站国外推广都是怎么推广
  • node.js做企业网站沈阳企业网站seo公司
  • 网页设计与网站建设在线测试答案seo搜索优化
  • 移动互联网网站开发技术互动营销经典案例
  • 像聚美网站建设费用chrome下载
  • 南通医院网站建设网站模板价格
  • 招聘网站可以做两份简历吗如何做网站推广优化
  • 企业网站空间选择自己的网站怎么样推广优化
  • 网站源代码编辑百度推广登录网址
  • 隆尧企业做网站网络推广外包代理
  • 网站建设应用技术seo小白入门教学
  • 外贸网站建设源码免费推广网站
  • 自己做民宿在什么网站上投放新闻20字摘抄大全
  • 提示危险网站企业seo关键字优化
  • 设计苹果手机网站网站推广优化价格
  • .net网站如何优化国外独立网站如何建站
  • 亚马逊网站类型沧州做网络推广的平台
  • 平面设计好学吗?没有基础湖南靠谱关键词优化
  • 政府网站开发预算如何实施网站推广
  • 怎么设计公司网页合肥seo代理商
  • 天津商城网站建设公司爱站网长尾关键词搜索
  • 怎么样做兼职网站搜索引擎优化搜索优化
  • 本地搭建网站网站后台苏州seo关键词优化外包
  • 网站建设步骤电脑外链工厂
  • 大良网站智能推广如何nba最新新闻消息
  • 无锡有没有做网站的公司企业网站营销优缺点
  • 一半招聘网站海报格式都怎么做西安seo优化培训
  • 广东门户网站建设推广渠道有哪些平台
  • 做网站流程内容品牌策划运营公司