Numpy统计计算

计算最小值

numpy.amin(a[, axis=None, out=None, keepdims=np._NoValue, initial=np._NoValue, where=np._NoValue]),即返回数组的最小值或沿轴的最小值

在这里插入图片描述
我们发现当,axis= 0和 axis=1时,是沿着轴进行操作。

计算最大值

numpy.amax(a[, axis=None, out=None, keepdims=np._NoValue, initial=np._NoValue, where=np._NoValue])
在这里插入图片描述
返回数组的最大值或是,沿着轴的最大值。

计算极差

numpy.ptp(a, axis=None, out=None, keepdims=np._NoValue)
在这里插入图片描述
沿轴的值范围(最大值-最小值)

计算分位数

numpy.percentile(a, q, axis=None, out=None, overwrite_input=False, interpolation=‘linear’, keepdims=False)在这里插入图片描述
a:array,用来算分位数的对象,可以是多维的数组。
q:介于0-100的float,用来计算是几分位的参数,如四分之一位就是25,如要算两个位置的数就[25,75]。
axis:坐标轴的方向,一维的就不用考虑了,多维的就用这个调整计算的维度方向,取值范围0/1。
定义上来说就是
计算沿指定轴的数据的第q个百分位数。返回数组元素的第q个百分点。

计算中位数

numpy.median(a, axis=None, out=None, overwrite_input=False, keepdims=False) 在这里插入图片描述
计算沿指定轴的中位数。返回数组元素的中位数。

计算平均值

numpy.mean(a[, axis=None, dtype=None, out=None, keepdims=np._NoValue)])
mean和average都是计算均值的函数
在这里插入图片描述
沿轴的总和除以所有的数量,沿指定轴计算算术平均值。

计算加权平均值

numpy.average(a[, axis=None, weights=None, returned=False])指定权重后,average可以计算加权平均值。
将各数值乘以相应的权数,然后加总求和得到总体值,再除以总的单位数。
在这里插入图片描述
计算指定轴上的加权平均值

计算方差

numpy.var(a[, axis=None, dtype=None, out=None, ddof=0, keepdims=np._NoValue])Compute the variance along the
计算沿指定轴的方差。
ddof=0:是“Delta Degrees of Freedom”,表示自由度的个数
在这里插入图片描述

计算标准差

即算术平方根

import numpy as np
x = np.array
y = np.std(x)
print(y)
y = np.sqrt(np.var(x)

print(y)
y = np.std(x, axis=1)
print(y)
y = np.std(x, axis=0)
print(y)

直方图和相关系数

numpy.digitize(x, bins, right=False)
x:numpy数组
bins:一维单调数组,必须是升序或者降序
right:间隔是否包含最右
返回值:x在bins中的位置。
程序1
在这里插入图片描述
程序2
在这里插入图片描述
返回输入数组中每个值所属的(一维数组即单调且是上升或下降)的索引

习题
计算给定数组中每行的最大值。

a = np.random.randint(2, 9, [1, 3])
在二维numpy数组的每一行中找到最大值,如下程序所示;
在这里插入图片描述

Python中,NumPy是一个强大的数值计算库,可以用来方便地进行各种统计分析,包括生成成绩分布、计算平均值、标准差等。以下是使用NumPy进行基本统计学操作生成成绩的一些步骤: 1. **安装和导入NumPy**: 首先,确保已经安装了NumPy,如果没有,可以通过pip安装: ``` pip install numpy ``` 然后在代码中导入NumPy模块: ```python import numpy as np ``` 2. **创建成绩数据**: 假设我们有一个包含学生分数的列表或数组,例如: ```python scores = [85, 90, 78, 92, 88, 80, 95, 76] ``` 3. **基本统计计算**: - **平均分(均值)**: `np.mean(scores)` - **标准差**: `np.std(scores)` - **中位数**: 使用`np.median()`,因为NumPy默认是升序排列 - **百分位数**: `np.percentile(scores, [25, 50, 75])` 返回Q1, Q2 (中位数), Q3 4. **生成成绩分布**: - **直方图(histogram)**: `plt.hist(scores, bins=10)`,可以使用matplotlib库配合展示分数的分布情况。 5. **保存或输出结果**: 对于数值结果,可以直接打印;对于可视化结果,可能需要结合Matplotlib或Seaborn库进行显示。 ```python # 示例 mean_score = np.mean(scores) std_dev = np.std(scores) median_score = np.median(scores) percentiles = np.percentile(scores, [25, 50, 75]) print(f"平均分: {mean_score}") print(f"标准差: {std_dev}") print(f"中位数: {median_score}") print(f"百分位数(25%, 50%, 75%): {percentiles}") # 可视化 import matplotlib.pyplot as plt plt.hist(scores, bins=10) plt.xlabel('分数') plt.ylabel('频率') plt.title('成绩分布') plt.show() ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值