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
备注:
-
元组,一种固定长度的,不可变的python对象序列
-
列表,长度可变的,内容可修改的序列
-
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.随机数生成