欢迎访问宙启技术站
智能推送

Numpy核心数字模块中的数据统计与分析方法总结

发布时间:2023-12-27 14:43:00

Numpy是Python中用于科学计算的核心数字模块,提供了很多用于数据统计与分析的方法。下面是对一些常用方法的总结,并附加了使用例子。

1. 数组元素的统计

Numpy提供了多个方法用于计算数组元素的统计值,如最大值、最小值、平均值、中位数、标准差等。

- 最大值:np.max(arr),返回数组arr中的最大值。

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(np.max(arr))  # 输出:5

- 最小值:np.min(arr),返回数组arr中的最小值。

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(np.min(arr))  # 输出:1

- 平均值:np.mean(arr),返回数组arr的平均值。

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(np.mean(arr))  # 输出:3.0

- 中位数:np.median(arr),返回数组arr的中位数。

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(np.median(arr))  # 输出:3.0

- 标准差:np.std(arr),返回数组arr的标准差。

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(np.std(arr))  # 输出:1.4142135623730951

2. 数组元素的频数统计

除了统计数组元素的统计值,Numpy还可以统计数组中每个元素的频数。

- 频数统计:np.bincount(arr),返回一个数组,数组的索引表示不同的元素值,数组元素的值表示该元素在原数组中出现的次数。

import numpy as np

arr = np.array([1, 2, 3, 2, 1, 3, 4, 5, 4, 5])
print(np.bincount(arr))  # 输出:[0 2 2 2 2 2]

3. 百分位数

Numpy提供了计算数组元素百分位数的方法。

- 百分位数:np.percentile(arr, q),返回数组arr中的q百分位数,范围为0到100。

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(np.percentile(arr, 75))  # 输出:4.0

4. 相关系数

Numpy还提供了计算数组之间相关系数的方法。

- 相关系数:np.corrcoef(arr1, arr2),返回数组arr1和arr2之间的相关系数。

import numpy as np

arr1 = np.array([1, 2, 3, 4, 5])
arr2 = np.array([5, 4, 3, 2, 1])
print(np.corrcoef(arr1, arr2))  # 输出:[[-1.  1.]
                                #       [ 1. -1.]]

5. 直方图

Numpy可以通过统计数组元素在不同区间出现的次数来绘制直方图。

- 直方图:np.histogram(arr, bins),返回一个元组,元组的 个元素表示不同区间的频数统计,元组的第二个元素表示每个区间的边界。

import numpy as np
import matplotlib.pyplot as plt

arr = np.array([1, 2, 3, 2, 1, 3, 4, 5, 4, 5])
hist, bins = np.histogram(arr, bins=[0, 1, 2, 3, 4, 5, 6])
plt.hist(arr, bins)
plt.show()

以上是Numpy核心数字模块中的一些数据统计与分析的方法总结,并附带了使用例子。这些方法可以帮助我们更方便地分析和理解数据,提取有用的信息。