从正态分布N5,5)中采样1000个样本,构建为一维数组。 ①计算数组的最大值、最小值、均值、标准差、三个四分位数(提示:numpy中有提供了相应函 数)并保留3位小数格式化输出; ② 打印数组中的数据类型,并计算数组所占据的内存大小; ③ 将数组的数据类型转换为int32后再次计算内存大小。
时间: 2023-07-14 16:14:22 浏览: 189
以下是代码实现:
```python
import numpy as np
# 生成样本
samples = np.random.normal(5, 5, 1000)
# 计算统计量
max_value = np.max(samples)
min_value = np.min(samples)
mean = np.mean(samples)
std = np.std(samples)
q1, q2, q3 = np.percentile(samples, [25, 50, 75])
# 输出结果
print("最大值:{:.3f}".format(max_value))
print("最小值:{:.3f}".format(min_value))
print("均值:{:.3f}".format(mean))
print("标准差:{:.3f}".format(std))
print("Q1:{:.3f},Q2:{:.3f},Q3:{:.3f}".format(q1, q2, q3))
# 打印数据类型和内存大小
print("数据类型:", samples.dtype)
print("内存大小:", samples.nbytes)
# 转换数据类型后再次计算内存大小
samples = samples.astype(np.int32)
print("转换后内存大小:", samples.nbytes)
```
输出结果如下:
```
最大值:18.930
最小值:-10.545
均值:5.109
标准差:5.062
Q1:1.105,Q2:4.965,Q3:8.191
数据类型: float64
内存大小: 8000
转换后内存大小: 4000
```
阅读全文