numpy简单函数
一、排序
python
# 使用numpy进行简单分析
import numpy as np
# 1 排序
np.random.seed(42) # 设置随机种子:确定后随机数确定,不会再发生变化
arr = np.random.randint(1,10,size=10) # size表示生成数的元素个数
print(arr)
arr.sort()
print(arr)
arr=np.random.randint(1,10,size=(3,3)) # 生成3行3列的随机数
print(arr)
arr.sort(axis=1) # 沿着横轴排序
print(arr)
arr.sort(axis=0) # 沿着纵轴排序
print(arr.sort(axis=0)) # 返回值为None
arr1 = np.random.randint(1,10,size=10) # size表示生成数的元素个数
arr1.argsort() # 返回值为重新排序值的下标
二、去重
python
import numpy as np
# 去重函数:unique ,且会排序,从低到高
names=np.array(["小明","小白","小花","小明","小白"])
scores=np.array([89,87,45,12,67,89,45,22])
new_name = np.unique(names)
new_score = np.unique(scores)
print(new_name)
print(new_score)
# 和unique等价的Python代码:sorted(set(names))
# set集合:唯一性
print(sorted(set(names)))
arr2=np.arange(5)
print(arr2)
print(np.tile(arr2,3)) # tile对数组进行重复:对arr2进行重复3次
# 对行或者列重复
np.random.seed(10) # 设置随机种子:确定后随机数确定,不会再发生变化
arr = np.random.randint(1,15,size=(3,3)) # size表示生成数的元素个数
print("-------------")
print(arr)
print(arr.repeat(2,axis=0)) # 按行进行元素重复2次
print(arr.repeat(3,axis=1)) # 按列进行元素重复3次
数据简单统计

python
import numpy as np
# np.mean () 均值
# 含义:一组数据的平均水平
# np.var () 方差
# 含义:数据离散波动大小;数值越大,数据越分散
# 适用场景
# 1. 衡量稳定性:股票收益率波动、设备测量误差、生产线产品尺寸波动
# 2. 特征筛选:方差很小的特征几乎没有信息,可以删掉
# np.std () 标准差
# 含义:方差开根号,和原始数据单位一致,最直观衡量波动
# np.cumsum () 累计和(累计值)
# 含义:逐项累加,得到到当前位置为止的总和,保留时序顺序
# 时序累计:每日销售额 → 累计营收;每日流量 → 累计访问量
# 函数 作用
# mean均值 描述集中位置 平均水平
# var方差 数学上衡量离散度 波动大小(平方单位)
# std标准差 直观衡量波动 波动大小(同原单位)
# cumsum累计和 时序累加过程 随位置不断累积总量
arr=np.arange(2,20).reshape(3,6)
# print(arr)
# # 求和
# print(np.sum(arr)) # 计算数组的和
# print(arr.sum(axis=0)) # 沿着横轴计算求和,取行
# print(arr.sum(axis=1)) # 沿着纵轴计算求和,取列
load_data = np.loadtxt("./iris_sepal_length.csv",delimiter=",")
print(load_data.shape)
print(type(load_data))
# print(load_data)
# print(load_data.__len__())
# print(len(load_data))
# 1 排序 执行后原数据不变
sorted_data = np.sort(load_data) # 默认升序
sorted_data = np.sort(load_data)[::-1] # 逆序输出
# print(load_data)
# print(sorted_data)
# 2 去重 执行后原数据不变
uniqued_data = np.unique(load_data)
# print(uniqued_data)
# print(load_data)
# 3 求和 np.array([1,2,3,4])
# print(np.sum(arr)) # 1+2+3+4 = 10
sum_data = np.sum(load_data)
# 累积和 print(np.cumsum(arr))
# [1, 1+2, 1+2+3, 1+2+3+4] → [1, 3, 6, 10]
cumsum_data = np.cumsum(load_data)
print(cumsum_data)
# 均值
mean_data = np.mean(load_data)
print(mean_data)
# 标准差
std_data = np.std(load_data)
print(std_data)
# 方差
var_data = np.var(load_data)
print(var_data)
# 最小值
min_data = np.min(load_data)
print(min_data)
# 最大值
max_data = np.max(load_data)
print(max_data)