Python数据分析使用numpy:数组、矩阵基本用法

本文详细介绍了Python数据分析库numpy的使用,包括数组元素索引、数组展开、组合拆分、矩阵创建及运算、通用函数、广播机制、数组的保存与读取、排序、去重和重复等核心概念,是进行数据处理的基础操作指南。
摘要由CSDN通过智能技术生成

1、数组元素索引

import  numpy as np
arr = np.arange(16).reshape((4,4))
#获取 0 2 行的 前两列
data = arr[[0,2],0:2:1]
data = arr[[0,2],[0,1,2]]  # 错误的,如果这样取值,前后的形状必须一致

# arr_mask = np.array([0,1,0,3],dtype=np.bool)
# # 利用bool数组进行切片
# data = arr[arr_mask,:] #第0行不见了
# # data = arr[:,arr_mask] # 第0列不见了

#总结:
"""
一维  arr[下标/切片]
二维  arr[行下边或者切片,列下标或者切片] 
三维  arr[块下标或者切片,行,列]
四维  arr[堆下标或者切片,块,行,列]
"""
# 注意:
#  如果使用下标,会降维度,如果使用切片,维度不变
# bool数组进行索引的时候,需要索引的是二维数组,那么你的bool数组是一维的,
# bool数组的长度 需要与你要切的维度的长度一致

2、数组展开

import  numpy as np
# 创建一个二维数组
arr = np.mat(np.arange(16).reshape((4,4)))
print("arr;\n",arr)

# 进行数组展开
# ravel() --进行将高维度数组 展开为一维,按行展开
# print(arr.ravel())
# flatten() -进行将高维度数组 展开为一维,按行展开---默认为C风格
# print(arr.flatten(order = "C"))
# 按列展开
# print(arr.flatten(order = "F"))
# print(arr)

# ravel 与C 风格flatten一样 

3、数组的组合

import  numpy as np
# 创建一个二维数组
arr_2 = np.arange(4,8).reshape([2,2])
arr_3 = np.array([[1,2]]) # (1,2)
print("arr2:\n",arr_2)

# 数组组合 ---参数 需要是一个对象---元组对象、或者列表对象
# new_arr = np.vstack((arr_1,arr_2)) #按照行的方向进行拼接
# new_arr = np.hstack([arr_1,arr_2]) #按照列的方向进行拼接
# new_arr = np.concatenate((arr_1,arr_3),axis=0) # (行,列) ---和vstack一样
# new_arr = np.concatenate((arr_1,arr_2),axis=1) # (行,列) ----和hstack 一样
# print("new_arr:\n",new_arr)

# 注意  : 拼接的时候维度必须一致
# 在行的方向进行拼接,你必须保证列数一致
#  在列的方向上进行拼接,必须保证行数一致

4、数组的拆分

import  numpy as np
# 创建一个二维数组
arr = np.arange(16).reshape
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值