列举NumPy数组中可用的几种统计方法
在本文中,我们将向您展示Python中NumPy库的一些统计方法。
统计学处理数据的收集和分析。它描述了收集样本、描述数据和得出结论的方法。NumPy是科学计算的核心包,因此NumPy统计函数与之密切相关。
NumPy有很多统计函数可用于进行统计数据分析。让我们在这里讨论其中的一些。
numpy.amin() 和 numpy.amax()
这些函数返回给定数组中沿指定轴的元素的最小值和最大值。
示例
import numpy as np # input array inputArray = np.array([[2,6,3],[1,5,4],[8,12,9]]) print('Input Array is:') print(inputArray) # Printing new line print() print("Minimum element in an array:", np.amin(inputArray)) print() print("Maximum element in an array:", np.amax(inputArray)) print() print('Minimum element in an array among axis 0(rows):') print(np.amin(inputArray, 0)) print('Minimum element in an array among axis 1(columns):') print(np.amin(inputArray, 1)) print() print('Maximum element in an array among axis 0(rows):') print(np.amax(inputArray, 0)) print() print('Maximum element in an array among axis 1(columns):') print(np.amax(inputArray, axis=1)) print()
输出
执行上述程序后,将生成以下输出:
Input Array is: [[ 2 6 3] [ 1 5 4] [ 8 12 9]] Minimum element in an array: 1 Maximum element in an array: 12 Minimum element in an array among axis 0(rows): [1 5 3] Minimum element in an array among axis 1(columns): [2 1 8] Maximum element in an array among axis 0(rows): [ 8 12 9] Maximum element in an array among axis 1(columns): [ 6 5 12]
numpy.ptp()
示例
numpy.ptp()函数返回沿轴的值的范围(最大值-最小值)。ptp()是峰峰值的缩写。
import numpy as np # input array inputArray = np.array([[2,6,3],[1,5,4],[8,12,9]]) print('Input Array is:') print(inputArray) print() print('The peak to peak(ptp) values of an array') print(np.ptp(inputArray)) print() print('Range (maximum-minimum) of values along axis 1(columns):') print(np.ptp(inputArray, axis = 1)) print() print('Range (maximum-minimum) of values along axis 0(rows):') print(np.ptp(inputArray, axis = 0))
输出
执行上述程序后,将生成以下输出:
Input Array is: [[ 2 6 3] [ 1 5 4] [ 8 12 9]] The peak to peak(ptp) values of an array 11 Range (maximum-minimum) of values along axis 1(columns): [4 4 4] Range (maximum-minimum) of values along axis 0(rows): [7 7 6]
numpy.percentile()
百分位数(或百分位)是统计学中使用的一种度量,表示一组观测值中低于给定百分比的观测值所占的比例。
它计算沿给定轴的数据的第n个百分位数。
语法
numpy.percentile(a, q, axis)
参数
| a | 输入数组 |
| q | 要计算的百分位数必须在0-100之间 |
| axis | 计算百分位数的轴 |
示例
import numpy as np # input array inputArray = np.array([[20,45,70],[30,25,50],[10,80,90]]) print('Input Array is:') print(inputArray) print() print('Applying percentile() function to print 10th percentile:') print(np.percentile(inputArray, 10)) print() print('10th percentile of array along the axis 1(columns):') print(np.percentile(inputArray, 10, axis = 1)) print() print('10th percentile of array along the axis 0(rows):') print(np.percentile(inputArray, 10, axis = 0))
输出
执行上述程序后,将生成以下输出:
Input Array is: [[20 45 70] [30 25 50] [10 80 90]] Applying percentile() function to print 10th percentile: 18.0 10th percentile of array along the axis 1(columns): [25. 26. 24.] 10th percentile of array along the axis 0(rows): [12. 29. 54.]
numpy.median()
中位数定义为将数据样本的上半部分与下半部分分隔的值。
numpy.median()函数计算多维或一维数组的中位数。
示例
import numpy as np # input array inputArray = np.array([[20,45,70],[30,25,50],[10,80,90]]) print('Input Array is:') print(inputArray) print() # printing the median of an array print('Median of an array:') print(np.median(inputArray)) print() print('Median of array along the axis 0(rows):') print(np.median(inputArray, axis = 0) ) print() print('Median of array along the axis 1(columns):') print(np.median(inputArray, axis = 1))
输出
执行上述程序后,将生成以下输出:
Input Array is: [[20 45 70] [30 25 50] [10 80 90]] Median of an array: 45.0 Median of array along the axis 0(rows): [20. 45. 70.] Median of array along the axis 1(columns): [45. 30. 80.]
numpy.mean()
算术平均值是沿轴的元素之和除以元素个数。
numpy.mean()函数返回数组中元素的算术平均值。如果指定了轴,则沿该轴计算。
示例
import numpy as np # input array inputArray = np.array([[20,45,70],[30,25,50],[10,80,90]]) print('Input Array is:') print(inputArray) print() # printing the mean of an array print('Mean of an array:') print(np.mean(inputArray)) print() print('Mean of an array along the axis 0(rows):') print(np.mean(inputArray, axis = 0) ) print() print('Mean of an array along the axis 1(columns):') print(np.mean(inputArray, axis = 1))
输出
执行上述程序后,将生成以下输出:
Input Array is: [[20 45 70] [30 25 50] [10 80 90]] Mean of an array: 46.666666666666664 Mean of an array along the axis 0(rows): [20. 50. 70.] Mean of an array along the axis 1(columns): [45. 35. 60.]
numpy.average()
numpy.average()函数计算多维数组沿轴的加权平均值,其权重在另一个数组中指定。
该函数可以具有axis参数。如果未指定axis,则数组将被展平。
示例
import numpy as np # input array inputArray = np.array([1,2,3,4]) print('Input Array is:') print(inputArray) print() # printing the average of all elements in an array print('Average of all elements in an array:') print(np.average(inputArray)) print()
输出
执行上述程序后,将生成以下输出:
Input Array is: [1 2 3 4] Average of all elements in an array: 2.5
标准差和方差
标准差
标准差是均值的平方偏差的平均值的平方根。标准差的公式如下:
std = sqrt(mean(abs(x - x.mean())**2))
如果数组是[1, 2, 3, 4],则其均值为2.5。因此,平方偏差为[2.25, 0.25, 0.25, 2.25],其均值的平方根除以4,即sqrt(5/4)为1.1180339887498949。
方差
方差是平方偏差的平均值,即mean(abs(x - x.mean())**2)。换句话说,标准差是方差的平方根。
示例
import numpy as np # input array inputArray= [1,2,3,4] # printing the standard deviation of array print("Input Array =",inputArray) print("Standard deviation of array = ", np.std(inputArray)) # printing the variance of array print("Variance of array = ", np.var(inputArray))
输出
执行上述程序后,将生成以下输出:
Input Array = [1, 2, 3, 4] Standard deviation of array = 1.118033988749895 Variance of array = 1.25
结论
本文通过示例学习了NumPy数组中的一些统计方法。
数据结构
网络
关系型数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP