【Python】Numpy 学习笔记 2
时间:2020-04-10
本文章向大家介绍【Python】Numpy 学习笔记 2,主要包括【Python】Numpy 学习笔记 2使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
numpy-data
简单的数组表达式¶
In [2]:
import numpy as np
In [3]:
# meshgrid 方法 输入两个一维数组,输出两个互为转置矩阵的二维数组
narr = np.arange(5)
print(np.meshgrid(narr, narr))
In [5]:
points = np.arange(-5, 5, 0.01)
x, y = np.meshgrid(points, points)
print(x)
print(y)
print("******************************")
z = np.sqrt(x ** 2 + y ** 2)
print(z)
In [9]:
import matplotlib.pyplot as plt
%matplotlib inline
plt.imshow(z, cmap=plt.cm.gray)
plt.colorbar()
plt.title(" $\sqrt{x^2 + y^2}$")
Out[9]:
将条件逻辑表述为数组运算¶
In [14]:
x = np.array([1, 2, 3, 4, 5])
y = np.array([6, 7, 8, 9, 10])
con = np.array([True, False, True, False, True])
res = [(x if c else y) for (x, y, c) in zip(x, y, con)]
print(res)
In [15]:
# 使用 where
res = np.where(con, x, y)
print(res)
In [17]:
# 使用 where 做数据处理,将 数组中所有大于 0 的值替换为 1, 小于 0 的值替换为 -1
arr = np.random.randn(4, 3)
print(arr)
res = np.where(arr > 0, 1, -1)
print(res)
基本数学统计值¶
In [20]:
arr = np.arange(20).reshape(4, 5)
print(arr)
# sum 求和
print(arr.sum())
print(np.sum(arr))
# mean 平均值
print(arr.mean())
# std 标准差
print(arr.std())
In [22]:
# 按列求
print(arr.sum(axis=0))
print(arr.mean(axis=0))
print(arr.std(axis=0))
# 按行求
print(arr.sum(axis=1))
print(arr.mean(axis=1))
print(arr.std(axis=1))
In [29]:
x = np.array([1, 2, 3, 4, 5])
print(x.cumsum()) # 累积和
print(x.cumprod()) # 累积积
In [32]:
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(arr.cumsum(axis=0))
print(arr.cumprod(axis=0))
Bool类型的数组在计算统计值时会被转换成 0(False) 和 1 (True), 可以使用 sum 统计数量¶
In [35]:
arr = np.array([True, False, True, False, True, True])
print((arr == 0).sum())
print((arr == 1).sum())
any() 表示 bool 数组中是否存在 True, all() 表示 bool 数组中是否都为 True¶
In [36]:
print(arr.any())
print(arr.all())
Numpy 排序¶
numpy.sort(a, axis, kind, order)¶
集合函数¶
In [40]:
arr = np.array([[2, 3, 1, 4], [7, 3, 6, 2], [1, 6, 2, 8]])
arr.sort()
print(arr)
arr = np.array([[2, 3, 1, 4], [7, 3, 6, 2], [1, 6, 2, 8]])
arr.sort(axis=0, kind='mergesort')
print(arr)
In [45]:
# argsort 输出元素在指定轴上的大小顺序
arr = np.array([[2, 3, 1, 4], [7, 3, 6, 2], [1, 6, 2, 8]])
res = arr.argsort()
print(arr)
print("*****************")
print(res)
In [47]:
# unique 去重
arr = np.array(['a', 'b', 'c', 'a', 'b', 'a'])
print(np.unique(arr))
In [48]:
# in1d 查找
print(np.in1d(arr, ['a', 'c', 'e']))
In [49]:
# load、save支持对文件的读写
矩阵运算¶
随机数生成¶
In [ ]:
原文地址:https://www.cnblogs.com/yeyeck/p/12672046.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法