numpy中mean(),std(),np.c_[],np.r_[]函数

mean()函数:

numpy.mean(a, axis, dtype, out,keepdims )

作用求取平均值:

经常操作的参数为axis,以m * n矩阵举例:

axis 不设置值,对 m*n 个数求均值,返回一个实数
axis = 0:压缩行,对各列求均值,返回 1* n 矩阵
axis =1 :压缩列,对各行求均值,返回 m *1 矩阵

a = np.array([[1, 2], [3, 4], [2, 6]])
# 计算整个数据的平均值
print(a.mean()) # 3
 
# 计算每一列的平均值
print(a.mean(axis=0)) # [2. 4.]
 
# 计算每一行的平均值
print(a.mean(axis=1)) # [1.5 3.5 4. ]

std()函数

numpy.std(arr, axis=None, dtype=float64)

作用:计算标准差

arr表示输入的数据,可以是一维数组或二维数组。
axis表示需要计算标准差的轴。
axis=0 表示沿列计算标准差,
axis=1 表示沿行计算标准差
dtype表示计算标准差时使用的数据类型

// 一维数组
import numpy as np
arr = [1, 2, 3]
print("一维数组 :", arr)
print("标准差 ", np.std(arr))

这样求出一个标准差:0.81649

// 二维数组按列求标准差
import numpy as np
arr = [[1, 2, 3],[1, 2, 3],[1, 2, 3]]
print("二维数组 :", arr)
print("标准差 ", np.std(arr,axis=0))

得出一个列表,把每列的标准差求出来,给出一个列表的标准差[0,0,0]

// 二维数组按行求标准差
import numpy as np
arr = [[1, 2, 3],[1, 2, 3],[1, 2, 3]]
print("二维数组 :", arr)
print("标准差 ", np.std(arr,axis=1))

标准差:[0.81649,0.81649,0.81649]

// 二维数组求所有数的标准差
import numpy as np
arr = [[1, 2, 3],[1, 2, 3],[1, 2, 3]]
print("二维数组 :", arr)
print("标准差 ", np.std(arr))

标准差:0.81649

np.c_[],np.r_[]函数

np.r_是按列连接两个矩阵,就是把两矩阵上下相加,要求列数相等。

np.c_是按行连接两个矩阵,就是把两矩阵左右相加,要求行数相等。

1.np.c_的用法

a = np.array([[1, 2, 3],[7,8,9]])
 
b=np.array([[4,5,6],[1,2,3]])
 
a
Out[4]: 
array([[1, 2, 3],
       [7, 8, 9]])
 
b
Out[5]: 
array([[4, 5, 6],
       [1, 2, 3]])
 
c=np.c_[a,b]
 
c
Out[7]: 
array([[1, 2, 3, 4, 5, 6],
       [7, 8, 9, 1, 2, 3]])
 
 
 
d= np.array([7,8,9])
 
e=np.array([1, 2, 3])
 
f=np.c_[d,e]
 
f
Out[12]: 
array([[7, 1],
       [8, 2],
       [9, 3]])

2.np.r_的用法:

a = np.array([[1, 2, 3],[7,8,9]])
b=np.array([[4,5,6],[1,2,3]])
 
d= np.array([7,8,9])
e=np.array([1, 2, 3])
 
g=np.r_[a,b]
 
g
Out[14]: 
array([[1, 2, 3],
       [7, 8, 9],
       [4, 5, 6],
       [1, 2, 3]])
 
h=np.r_[d,e]
 
h
Out[16]: array([7, 8, 9, 1, 2, 3])

你可能感兴趣的:(深度学习,机器学习,概率论)