numpy_基础计算

import numpy as np

a = np.array([1, 2, 3, 4])
b = np.array([0, -1, 1, 2])

# 判断数列a 中的元素是否为3
print(a == 3)  # [False False  True False]
print(a is 3)  # False
# np.nonzero---输出两个array,第一个array显示非0元素横坐标,第二个array为纵坐标
print(np.nonzero(a))

# 基础加减
print('a-b:', a - b)
print('a+b:', a + b)

# 求sin,cos值
a1 = 2 * np.sin(a)
a2 = np.cos(a)
print(a1)
print(a2)

# 两种乘法运算-----------------------------------
a = np.array([[1, 2], [2, 2]])
b = np.array([[0, 3], [2, 1]])
# 第一种乘法a*b---a中的每个元素与b中对应位置的元素相乘
print(a * b)

# 第二种乘法np.dot(a.b)---a,b进行矩阵乘法
print(np.dot(a, b))
# ------------------------------------------------

# ---使用random生成一个含6元素的单行数列,每个元素在0~1之间
a = np.random.random(6)
print(a)

# 求a的sum, min, max,mean/average中位数, median中位数
a = np.random.random((3, 4))
print('np.sum求元素之和:', np.sum(a))
print('np.min求最小值:', np.min(a))
print('np.max求最大值:', np.max(a))
print(np.mean(a))
print(np.average(a))  # a中所有元素的平均值(比较老的用法)
print(np.median(a))

# 求a的cumsum累加值, diff累差值
print(np.cumsum(a))  # 元素逐渐累加的和
print(np.diff(a))  # 元素之间求差
print(np.sort(a))  # 逐行自小到大排序

# 求a每一行(或列)的sum,min,max值(axis=0表示每一行,axis=1表示每一列)
print('a中每一行求和:', np.sum(a, axis=0))
print('a中每一列求和:', np.sum(a, axis=1))
print('a中每一列的min值', np.min(a, axis=0))
print(np.mean(a, axis=0))  # 输出结果为每一列的平均值

# 求a的min, max值的索引
a = np.arange(14, 2, -1).reshape((3, 4))
print(np.argmin(a))  # 结果为0
print(np.argmax(a))  # 结果为11

# np.tranpose---转置,np.clip---切片替换
print(np.transpose(a))  # 输出结果为a的转置,即元素的所在的行列调换
print(np.clip(a, 5, 9))  # 输出结果为小于5的元素替换为5,大于9的元素替换为9

 

posted @ 2022-05-24 23:02  淫鬻  阅读(9)  评论(0编辑  收藏  举报