scipy stats.mode()函数| Python
scipy.stats.mode(array, axis=0)
函数计算数组元素沿数组指定轴的模式( Python中的列表)。
它的公式——
where,
l : Lower Boundary of modal class
h : Size of modal class
fm : Frequency corresponding to modal class
f1 : Frequency preceding to modal class
f2 : Frequency proceeding to modal class
Parameters :
array : Input array or object having the elements to calculate the mode.
axis : Axis along which the mode is to be computed. By default axis = 0
Returns : Modal values of the array elements based on the set parameters.
代码#1:
# Arithmetic mode
from scipy import stats
import numpy as np
arr1 = np.array([[1, 3, 27, 13, 21, 9],
[8, 12, 8, 4, 7, 10]])
print("Arithmetic mode is : \n", stats.mode(arr1))
输出 :
Arithmetic mode is :
ModeResult(mode=array([[1, 3, 8, 4, 7, 9]]), count=array([[1, 1, 1, 1, 1, 1]]))
代码 #2:使用多维数据
# Arithmetic mode
from scipy import stats
import numpy as np
arr1 = [[1, 3, 27],
[3, 4, 6],
[7, 6, 3],
[3, 6, 8]]
print("Arithmetic mode is : \n", stats.mode(arr1))
print("\nArithmetic mode is : \n", stats.mode(arr1, axis = None))
print("\nArithmetic mode is : \n", stats.mode(arr1, axis = 0))
print("\nArithmetic mode is : \n", stats.mode(arr1, axis = 1))
输出 :
Arithmetic mode is :
ModeResult(mode=array([[3, 6, 3]]), count=array([[2, 2, 1]]))
Arithmetic mode is :
ModeResult(mode=array([3]), count=array([4]))
Arithmetic mode is :
ModeResult(mode=array([[3, 6, 3]]), count=array([[2, 2, 1]]))
Arithmetic mode is :
ModeResult(mode=array([[1],
[3],
[3],
[3]]), count=array([[1],
[1],
[1],
[1]]))