numpy笔记二(常用数组函数)

函数名 描述
savetxt 保存文件
loadtxt 加载文件数据
average 平均值
mean 平均值
max 最大值
min 最小值
ptp 最大最小值的差值
median 中位数
var 方差
log 对数
diff 相邻数据差,后者减去前者
std 标准差
where where函数返回满足要求下标或数据
zeros 创建数组,内容都为0
ones 创建数组,内容都为1
empty 创建数组,内容都为1
linspace 从某个范围内依次取数据,等差数列
sin sin三角函数
cos cos三角函数
dot 点积
prod 阶乘
clip 修剪,根据最大最小值替换
compress 压缩,返回满足条件的数据

代码如下:

import numpy as np
import matplotlib.pyplot as plt


#读写文件

#创建一个单位矩阵,即主对角线上的元素均为1,其余元素均为0的正方形矩阵
i2 = np.eye(3)
print(i2)

file = "C:/Users/Administrator/Desktop/eye.txt"
#下面代码会自动创建文件
np.savetxt(file, i2)
#加载数据,delimiter:分割符号,默认空格,unpack=True,意思是分拆存储不同列的数据.
a,b,c = np.loadtxt(file,delimiter=' ',unpack=True)
print(a)
print(b)
print(c)

#求数组平均值
a = np.array([3,4,5,2])
b = np.array([0.1,0.2,0.3,0.4])
av = np.average(a)#平均值
print("average:",av)
av = np.average(a,weights=b)#加权平均,2*0.1 + 3*0.2 + 4*0.3 * 5*0.4 = 4.0
print("average:",av)


print("mean:",np.mean(a))#mean也用来求平均值
print("max:",np.max(a))#最大值
print("min:",np.min(a))#最小值
print("ptp:",np.ptp(a))#最大最小值的差值
print("median:",np.median(a))#中位数
print("var:",np.var(a))#方差
print("log:",np.log(a))#对数
print("diff:",np.diff(a))#相邻数据差,后者减去前者
print("std:",np.std(a))#标准差
print("where:",np.where(a>2))#where函数返回满足要求下标。
print("where:",np.where(a>2,1,0))#where函数,替换满足要求的数据
print("zeros:",np.zeros(5))#创建数组,内容都为0,可以创建多维数组
print("ones:",np.ones(5))#创建数组,内容都为1,可以创建多维数组
print("empty:",np.empty(5))#创建数组,内容都为1,可以创建多维数组
print("linspace:",np.linspace(0,10,5))#从0到10,平均选取5个元素
print("sin:",np.sin(np.array([1,2,3])))#sin三角函数
print("cos:",np.cos(np.array([1,2,3])))#cos三角函数


a = np.array([1,2,3])
b = np.array([1,2,3,4,5,6,7,8,9]).reshape(3,3)
c = np.dot(a,b)#点积
print(c)

a = np.arange(1,9)
print(a)
print(a.prod())#阶乘
print(a.clip(1,2))#修剪,将所有比给定最大值还大的元素全部设为给定的最大值,
#而所有比给定最小值还小的元素全部设为给定的最小值
print(a.compress(a > 2))#返回满足条件的元素

输出结果如下:

[[1. 0. 0.]
 [0. 1. 0.]
 [0. 0. 1.]]
[1. 0. 0.]
[0. 1. 0.]
[0. 0. 1.]
average: 3.5
average: 3.4000000000000004
mean: 3.5
max: 5
min: 2
ptp: 3
median: 3.5
var: 1.25
log: [1.09861229 1.38629436 1.60943791 0.69314718]
diff: [ 1  1 -3]
std: 1.118033988749895
where: (array([0, 1, 2], dtype=int64),)
where: [1 1 1 0]
zeros: [0. 0. 0. 0. 0.]
ones: [1. 1. 1. 1. 1.]
empty: [1. 1. 1. 1. 1.]
[ 0.   2.5  5.   7.5 10. ]
[0.84147098 0.90929743 0.14112001]
[ 0.54030231 -0.41614684 -0.9899925 ]
[30 36 42]
[1 2 3 4 5 6 7 8]
40320
[1 2 2 2 2 2 2 2]
[3 4 5 6 7 8]
[Finished in 0.7s]

猜你喜欢

转载自blog.csdn.net/maosijunzi/article/details/79543553