NumPy辟邪剑谱——高阶篇

前言

学完入门篇和进阶篇应该足以应付日常工作中的问题了,但是还有一些补充内容作为高阶内容。
如果忘了基础怎么办呢? 再看一遍呗。
入门篇传送门:NumPy辟邪剑谱——入门篇
进阶篇传送门:NumPy辟邪剑谱——进阶篇

还想安利一波这本书《利用python进行数据分析》,代码很实用,内容通俗易懂。


import numpy as np

# 1. 面向数组编程
# 利用数组表达式来替代显示循环的方法,成为向量化。
# 书上说向量化的操作比纯python的等价实现速度快1到2个数量级,牛逼

# 1.1 array中的三元表达式, np.where(condition, arr1, arr2)
# 有这么一个场景,有三个array,分别是arr1, arr2, condition
# 如果condition中的值True,从arr1中取值,否则从arr2中取值
# arr1 = np.array([1.1, 1.2, 1.3, 1.4, 1.5])
# arr2 = np.array([2.1, 2.2, 2.3, 2.4, 2.5])
# condition = np.array([True, True, True, False, False])
# filtered_arr = np.where(condition, arr1, arr2)
# print(filtered_arr)

# 1.2 np.where()还可以这么用
arr3 = np.random.randn(4, 4)
# 如果元素大于0,给其赋值为2,否则赋值为-2
# filtered_arr2 = np.where(arr3 > 0, 2, -2)
# print(filtered_arr2)

# 也可以让小于0的元素赋值为0,大于0的元素不变。
# filtered_arr3 = np.where(arr3 < 0, 0, arr3)
# print(filtered_arr3)

# 2. 聚合函数
# 可以使用numpy提供的聚合函数进行快速计算
# 2.1 np.sum() 求和
arr4 = np.array([1,2,3,4])
sum_value = np.sum(arr4)
print(sum_value)

# 也可以通过array对象调用: array.sum()

# 2.2 np.mean() 平均值
mean_value = arr4.mean()
print(mean_value)

# 2.3 np.std() 标准差
std_value = arr4.std()
print(std_value)


# 3. 检查bool array的函数
# 3.1 bool_array.all() 检查bool_array是否全为True,全为True则返回True,否则返回False

# 3.2 bool_array.any() boo_array至少有一个True,但凡有一个就返回True,否则返回False

你可能感兴趣的:(NumPy辟邪剑谱——高阶篇)