NumPy 库

2022-08-02  本文已影响0人  灵活胖子的进步之路

title: An R Markdown document converted from "03.ipynb"
output: html_document


一、NumPy 库

NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供了大量的数学函数库。

import numpy as np

二、NumPy 库数据结构——ndarray

1. 初识ndarry

a = (1, 2, 3, 4, 5)
a
type(a)
b = [1, 2, 3, 4, 5]
b
type(b)
x=np.array(b)
x
c = np.array([1, 2, 3, 4, 5])
c
c.shape
b_ = np.array(b)
b_
d = [[1, 2 ,3], [4, 5, 6]]
d
e = np.array(d)
e
e.dtype()
f = np.array([[1, 2, 3], [4, 5]])
f
g = np.array([1,None, 3, 'bo', (1,2)])
type(g[0])
g.dtype

备注:

  1. 元组,一种固定长度的,不可变的python对象序列

  2. 列表,长度可变的,内容可修改的序列

  3. ndarray,高效多维同类数据容器,支持矩阵

NumPy 数据类型:

  int8/int16/int32——整数类型

  float16/float32/float64/float128——浮点数类型

  object——object类型

  bool——布尔值类型

  string_——字符串类型

  unicode_——unicode类型

  complex64/complex128/complex256——复数类型

2. ndarray 的属性和方法

e.shape
e
e_ = e.reshape(3, 2)
e_
e_
e_ = e.reshape(1, 6)
e.dtype
e.ndim
e.reshape(2,1,3)
e_int8 = e.astype("int8")
e_int8
e_float32 = e.astype("float32")
e_float32
e
e.dtype

三、ndarray 运算

1. ndarray 矩阵运算

a = [1, 2, 3]
b = [4, 5, 6]
a + b
a_ = np.array(a)
b_ = np.array(b)
a_
b_
a_ + b_
a_ - 1
a_ * 3
c = np.array([[1, 2, 3], [4, 5, 6]])
c
c.T
c.T

2. ndarray 通用函数计算

2.1 一元通用函数:接收一个ndarray对象,并进行逐元素操作

a_
np.square(a)
np.sqrt(a_)
np.sqrt(a_).dtype

2.2 二元通用函数:接收两个ndarray对象,并进行计算操作

a_
b_
np.add(a_,b_)
np.multiply(a_,b_)
a
b
np.sqrt(a)
np.add(a, b)

3. ndarray 基础统计方法

e
e.sum(axis = 0)
e.sum(axis = 1)
e.max(axis = 0)
e.min(axis = 1)
e.argmax(axis = 0)
e.argmin(axis = 1)

小结

一、NumPy库

二、Numpy库核心——ndarray

1.初识ndarray

2.ndarray的属性和方法

三、ndarray 运算

1.ndarray 矩阵运算

2.ndarray 通用函数计算

3.ndarray 基础统计方法

四、 ndarray 切片与索引

1. 基础索引与切片

a = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16])
a[4]
a[2:4]
a_  = a.reshape(4,4)
a_
a_[2]
a_[:2]
a_[2:]
a_[:,2]
a_[:,:2]
a_[:2,:2]
a_[:2,:2] = 5
a_
a_[::2,::2]
a_[::1,::1]

2. 布尔值索引

person = np.array(["A","B","C","D","E","F","G"])
group = np.array([1, 2, 1, 1, 1, 2, 2])
group == 1
person[group == 1]

五、ndarray 删除操作

a = [1, 2, 3, 4, 5]
a.pop(3)
a
a.append(6)
a
a.insert(0,0)
a
group
group.pop
group.append
group.insert
a = np.array([[1,2,3,4], [5,6,7,8], [9,10,11,12]])
a
np.delete(a, 1, axis = 0)

六、ndarray 合并操作

b = a
a + b
np.concatenate((a, b),axis = 0)
np.concatenate((a, b),axis = 1)
b_ = b.T
b_
np.concatenate((a, b_),axis = 1)

七、Numpy 其他常用函数或方法

1. 一维数组生成函数

a = np.arange(10)
a
b = np.arange(3, 9)
b
b = np.arange(3, 9, 2)
b
c = range(10)
c
list(c)
h = np.linspace(0, 10, 5)
h
i = np.logspace(-2, 2, 50)
i

2. 多维数组生成函数

a = np.zeros((3, 5))
a
b = np.ones((2, 4))
b

3. 随机数生成

a = np.random.randint(0, 20, size = (3, 5))
a
b = np.random.normal(size=(3,5))
b
np.random.seed(121)
b = np.random.normal(size=(3,5))
b
np.random.seed(121)
b = np.random.normal(size=(3,5))
b
np.random.permutation([1,2,3,4,5,6])

小结

一、NumPy库

二、Numpy库核心——ndarray

1.初识ndarray

2.ndarray的属性和方法

三、ndarray 运算

1.ndarray 矩阵运算

2.ndarray 通用函数计算

3.ndarray 基础统计方法

四、ndarray 切片与索引

1.基础切片与索引

2.布尔值索引

五、ndarray 删除操作

六、ndarray 合并操作

七、NumPy 其他常用函数或方法

1.一维数组生成函数

2.多维数组生成函数

3.随机数生成

上一篇下一篇

猜你喜欢

热点阅读