Python08-numpy数组整理

numpy是针对多维数组(ndarray)的一个科学计算包。数组是相同数据类型的元素按一定顺序排列的组合。

numpy中所需的数据结构为数组——使用array( )函数创建

  • 生成
    array中传入对象(列表、元组等)。arr=np.array([2,4,6,8]) arr=np.array((1,4,6))

固定范围的数组 np.arrang(start, stop, step)
指定形状0数组 np.zeros(3)
指定形状1数组 np.ones(3)
正方形单位矩阵 np.eye(3)
随机数组 np.random.rand(x,y) x行y列0-1之间的随机数
正态分布的随机数 np.random.randn()
指定范围的随机数 np.random.randint(1,5,10) 10个1到5之间的随机数
从已知数组中选择 np.random.choice( )
打乱顺序 np.random.shuffle( )

  • 基本属性

    数组的形状 arr.shape
    多少个元素 arr.size
    数组类型 arr.dtype
    数组维数 arr.ndim

  • 数据获取

  1. 某个区间 : 左闭右开 [m,n] 从m到n 不包括n
  2. 某个条件 : arr[arr>3]
    [-1] —— 末尾数值
    [3:-2] —— 第3位到倒数第2位,不包括第2位
  • 变形
    reshape(m, n) —— 转变为m行n列
    .T 转置
    .ravel() arr.ravel()
  • 合并
  1. concatenate([arr1,arr2], axis=1) axis=1 在行方向上进行合并; axis=0 在列方向上进行合并
  2. hstack,vstack 横向/纵向合并 以元组形式输入 np.hstack((arr1, arr2))
  3. colum_stack , row_stack 同上
  • 分割
    hsplit,vsplit 横向/纵向分割 np.hsplit(a,(3,4)) # Split a after the third and the fourth column

  • 常用的分析函数
    元素级(作用于每一个元素): np.abs(arr),sqrt,square,exp,log,isnan
    描述统计函数: .sum(),mean,std,var(方差),min,max,argmin,argmax(最小/大值的索引)

  • 条件函数
    np.where(condition, x, y) —— 类似于Excel中的 if(condition, true ,false)

arr=np.array([56,60,78])
np.where(arr>60,"及格","不及格")
  • 集合关系
    包含、交叉、并集、差集
    包含:数组arr1中包含数组arr2中的哪些值 np.inld(arr1,arr2)
    交集:公共部分 np.intersectld(arr1,arr2)
    并集:所有元素集合 np.unionld(arr1,arr2)
    差集:在arr1中存在,arr2中不存在 np.setdiffld(arr1,arr2)

  • 数据预处理

    1. 类型转换
    2. 缺失值处理
    3. 重复值处理

1.astype() arr.astype(np.float64) arr.astype(np.string_)
2.缺失值处理 a.是否含有缺失值,找出来 b.对缺失值进行填充
np.isnan(arr) arr[np.isnan(arr)] = 0
3.重复值处理 np.unique(arr)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值