numpy学习

1.Numpy属性

  • ndim:秩
  • shape:形状
  • size:个数
  • dtype:元素类型

2.创建操作

b = np.array([1, 2, 3])
# 创建一个numpy数组

c = np.zeros((2, 3))
# 创建全0

d = np.ones((3, 3))
# 全1

e = np.arange(0, 10, 2)
# 类似range,(起始,结尾, 步长)

f = np.linspace(0, 1, 5)
# 等间隔数组包含[L, R]

3.运算

  1. 基本算术运算

    x = np.array([1, 2, 3])
    y = np.array([4, 5, 6])
    
    # 加法
    z = x + y  # 输出: [5 7 9]
    
    # 减法
    z = x - y  # 输出: [-3 -3 -3]
    
    # 乘法
    z = x * y  # 输出: [4 10 18]
    
    # 除法
    z = x / y  # 输出: [0.25 0.4  0.5]
    
  2. 广播(Broadcasting)

    x = np.array([1, 2, 3])
    y = 2
    
    # 数组与标量运算
    z = x * y  # 输出: [2 4 6]
    
  3. 矩阵乘法

    a = np.array([[1, 2], [3, 4]])
    b = np.array([[5, 6], [7, 8]])
    
    # 元素逐个相乘
    c = a * b  # 输出: [[ 5 12]
               #       [21 32]]
    
    # 矩阵乘法
    d = np.dot(a, b)  # 输出: [[19 22]
                      #       [43 50]]
    
  4. 数组求和、最大值、最小值、均值等

    a = np.array([1, 2, 3, 4, 5])
    
    # 总和
    total = np.sum(a)  # 输出: 15
    
    # 最大值
    max_value = np.max(a)  # 输出: 5
    
    # 最小值
    min_value = np.min(a)  # 输出: 1
    
    # 平均值
    mean_value = np.mean(a)  # 输出: 3.0
    
    # 标准差
    std_value = np.std(a)  # 输出: 1.4142135623730951
    
  5. 数组变形和转置

    a = np.array([[1, 2, 3], [4, 5, 6]])
    
    # 变形
    b = a.reshape((3, 2))  # 输出: [[1 2]
                           #       [3 4]
                           #       [5 6]]
    
    # 转置
    c = a.T  # 输出: [[1 4]
              #       [2 5]
              #       [3 6]]
    
  6. 索引和切片

    a = np.array([1, 2, 3, 4, 5])
    
    # 访问单个元素
    print(a[0])  # 输出: 1
    
    # 访问子数组
    print(a[1:4])  # 输出: [2 3 4]
    
    b = np.array([[1, 2, 3], [4, 5, 6]])
    
    # 访问二维数组元素
    print(b[0, 1])  # 输出: 2
    
    # 访问二维数组的行
    print(b[0, :])  # 输出: [1 2 3]
    
    # 访问二维数组的列
    print(b[:, 1])  # 输出: [2 5]
    
  7. 条件筛选

    a = np.array([1, 2, 3, 4, 5, 6])
    
    # 条件筛选
    b = a[a > 3]  # 输出: [4 5 6]
    
  8. axis

    import numpy as np
    
    a = np.array([[1, 2, 3], [4, 5, 6]])
    
    #沿轴0求和(按列求和)
    sum_axis_0 = np.sum(a, axis=0)
    print(sum_axis_0)  # 输出: [5 7 9]
    
    #沿轴1求和(按行求和)
    sum_axis_1 = np.sum(a, axis=1)
    print(sum_axis_1)  # 输出: [ 6 15]
    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值