【Python工具包之Numpy】概述+array结构+数值计算+索引+排序+数组+运算+随机模块+读写

1、array结构

  • Numpy,数据由矩阵组成,矩阵计算使用Numpy(科学计算);
  • Numpy,list数据需要先转化成ndarray结构(n 表示的是n个 d dimension 维度 array 数组);
  • 对于ndarray结构来说,里面所有的元素必须是同一类型的 如果不是的话,会自动的向下进行转换;

数值类型
float–浮点型
str --字符串
int – 整型
object–字符串

2、ndarray基本属性操作

  • 使用之前需要先导入numpy工具包;
  • 退出需要重新运行工具包。
import numpy as np
  • type打印当前输入格式
wang_list = [1,2,3,4,5]
wang_array = np.array(wang_list)
wang_array
type(wang_array)

numpy.ndarray

  • dtype打印当前输入类型
wang_array.dtype

dtype(‘int32’)

  • astype:转换类型
wang_array.astype(np.float32)

array([ 1., 2., 3., 4., 5.], dtype=float32)

  • itemsize:打印当前数组大小
wang_array.itemsize

4

  • size:有几个元素
wang_array.size

5

  • .shape值;(m,n)表示m*n维数据,即有m个样本数据,每个数据有n个特征,可了解数据规模;也可debug。
wang_array.shape
np.shape(wang_array)

(5,)

  • dnim:维度
wang_array.ndim

1

  • fill:填充
wang_array.fill(0)
wang_array

array([0, 0, 0, 0, 0])

3、索引与切片

(1)一维数组

  • 索引与切片:跟Python都是一样的 还是从0开始的;
  • 从左取到右但是不包括右;
  • -1表示从最后一个。
wang_list = [1,2,3,4,5,6]
wang_array = np.array(wang_list)
wang_array[0]

1

wang_array[1:3]

array([2, 3])

wang_array[-3:]

array([4, 5, 6])

(2)多维数组索引

  • 需指定每个维度的索引;
  • 若未指定某一维度,表示取此维度所有数据;
  • 右边不指定维度可以省略冒号,左边不可;
  • 可通过索引定位到数据,然后对数据进行赋值。
wang_array = np.array([[1,2,3],
                      [4,5,6],
                      [7,8,9]])#3*3的二维数组(两个中括号)
wang_array[1,1]

5

wang_array[1,1]=10#赋值
wang_array

array([[ 1, 2, 3],
[ 4, 10, 6],
[ 7, 8, 9]])

wang_array[1]

array([ 4, 10, 6])

wang_array[:,1]

array([ 2, 10, 8])

wang_array[0,0:1]

array([1,2])

(3)赋值(=)&复制(copy)

等号赋值会改变原本数组的值,.copy复制不会改变原本数组的值。

  • 等号(=)赋值
wang_array2 = wang_array
wang_array2[1,1] = 100
wang_array

array([[ 1, 2, 3],
[ 4, 100, 6],
[ 7, 8, 9]])

  • .copy 复制
wang_array2 = wang_array.copy()
wang_array2[1,1] = 10000
wang_array2

array([[ 1, 2, 3],
[ 4, 10000, 6],
[ 7, 8, 9]])


                
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值