• 【数据分析&数据挖掘】数组的创建


      1 import numpy as np
      2 import random
      3 
      4 arr = np.array([1,2,3,4])
      5 print('arr:
    ', arr)
      6 print('arr的类型:
    ', type(arr))
      7 
      8 # 用arange来创建数组
      9 arr = np.arange(0, 5, 2)
     10 print('arr:
    ', arr)
     11 print('arr的类型:
    ', type(arr))
     12 
     13 # 生成一个等差数组
     14 # 参数1 开始位置
     15 # 参数2 结束位置
     16 # 参数3 生成的数组的元素个数
     17 # endpoint=True --包含结束位置
     18 arr = np.linspace(0, 5, 6)
     19 print('arr:
    ', arr)
     20 print('arr的类型:
    ', type(arr))
     21 
     22 # 生成一个等比数组
     23 # 参数1 开始位置
     24 # 参数2 结束位置
     25 # 参数3 生成数组的元素的个数
     26 # endpoint=True --包含结束位置
     27 # base=10.0
     28 arr = np.logspace(0, 4, 3, base=4)
     29 print('arr:
    ', arr)
     30 print('arr的类型:
    ', type(arr))
     31 
     32 # zeros ones diag eye 来创建数组
     33 
     34 # 生成一个元素都是0的数组
     35 arr = np.zeros(shape=(2, 3))
     36 arr = np.zeros(shape=[2, 3])
     37 print('arr:
    ', arr)
     38 print('arr的类型:
    ', type(arr))
     39 print('arr的维度:', arr.ndim)
     40 print('arr的形状:', arr.shape)
     41 
     42 # 生成一个元素都是1的数组
     43 arr = np.ones(shape=(2, 3))
     44 print('arr:
    ', arr)
     45 print('arr的类型:
    ', type(arr))
     46 print('arr的维度:', arr.ndim)
     47 print('arr的形状:', arr.shape)
     48 
     49 # 创建一个类似对角矩阵的数组
     50 arr = np.diag([1, 2, 3, 4], k=0)
     51 # 如果k>0,给定的值在正对角线的位置向上偏移k单位
     52 arr = np.diag([1, 2, 3, 4], k=1)
     53 # 如果k<0,给定的值在正对角线的位置向下偏移k单位
     54 arr = np.diag([1, 2, 3, 4], k=-1)
     55 print('arr:
    ', arr)
     56 print('arr的类型:
    ', type(arr))
     57 print('arr的维度:', arr.ndim)
     58 print('arr的形状:', arr.shape)
     59 
     60 arr = np.diag(v=[[1, 2],[2, 4]])
     61 hh = np.array([[1, 2, 3], [3, 4, 5]])
     62 # # 如果v为二维数组,且k=0,那么获取的对角线结果
     63 # arr = np.diag(v=hh, k=0)
     64 arr = np.diag(v=hh, k=1)
     65 arr = np.diag(v=hh, k=-1)
     66 print('arr:
    ', arr)
     67 print('arr的类型:
    ', type(arr))
     68 print('arr的维度:', arr.ndim)
     69 print('arr的形状:', arr.shape)
     70 
     71 # 生成一个类似单位矩阵的数组
     72 # N 行数
     73 # M 列数 可以省略
     74 arr = np.eye(N=2, M=2, k=0)
     75 arr = np.eye(N=2, M=2, k=1)
     76 arr = np.eye(N=3, k=0)
     77 print('arr:
    ', arr)
     78 print('arr的类型:
    ', type(arr))
     79 print('arr的维度:', arr.ndim)
     80 print('arr的形状:', arr.shape)
     81 
     82 # 创建随机数组
     83 arr = np.random.random(size=10)
     84 arr = np.random.random(10)
     85 arr = np.random.random(size=(2, 3))  # 用size不用shape
     86 print('arr:
    ', arr)
     87 print('arr的类型:
    ', type(arr))
     88 print('arr的维度:', arr.ndim)
     89 print('arr的形状:', arr.shape)
     90 
     91 # # 生成服从均匀分布的随机数组[0, 1)
     92 # # 均匀分布是由大量数据产生的结论,可以应用于少量数据——但不能分局少量数据推测不出均匀分布
     93 arr = np.random.rand(30)  # 生成数组的元素个数
     94 arr = np.random.rand(2, 3)  # 生成数组的行列数
     95 # arr = np.random.rand((2, 3))  # 这是错误的,不能是形状
     96 print('arr:
    ', arr)
     97 print('arr的类型:
    ', type(arr))
     98 print('arr的维度:', arr.ndim)
     99 print('arr的形状:', arr.shape)
    100 
    101 # 生成一个符合正态分布的数组
    102 # 正态分布——由大量数据产生的结论,可以应用于少量数据——但不能根据少量数据推测出正态分布
    103 # μ——数学期望——均值
    104 # σ——标准差,反应的是数据的离散程度
    105 # σ越大,说明数据越离散,图像就越平滑,σ越小,说明数据越聚集,图像就越陡峭
    106 # 如果均值为μ=0.0,标准差σ=1.0,此时为标准正态分布
    107 # 生成一个符合标准正态分布的数组
    108 print("正态分布")
    109 arr = np.random.randn(10)  # 可以传生成元组的个数
    110 arr = np.random.randn(2, 3)  # 可以传生成元组的行列数
    111 # arr = np.random.randn((2, 3))  # 错误,不可以传形状
    112 print('arr:
    ', arr)
    113 print('arr的类型:
    ', type(arr))
    114 print('arr的维度:', arr.ndim)
    115 print('arr的形状:', arr.shape)
    116 
    117 # 创建某区间内的随机整数数组
    118 # 生成[low, high)内指定size的随机整数数组
    119 arr = np.random.randint(low=1, high=5, size=10)
    120 arr = np.random.randint(low=1, high=5, size=(2, 3))
    121 print('arr:
    ', arr)
    122 print('arr的类型:
    ', type(arr))
    123 print('arr的维度:', arr.ndim)
    124 print('arr的形状:', arr.shape)
    125 
    126 # 创建某个区间内的随机小数数组
    127 # 默认生成[0, 1)范围内的随机小数数组,可以指定生成小数的范围
    128 arr = np.random.uniform(size=10)
    129 arr = np.random.uniform(size=(2, 3))
    130 arr = np.random.uniform(low=2, high=3, size=(2, 3))
    131 print('arr:
    ', arr)
    132 print('arr的类型:
    ', type(arr))
    133 print('arr的维度:', arr.ndim)
    134 print('arr的形状:', arr.shape)
  • 相关阅读:
    敏捷开发学习笔记-Agile development(AM)
    WindowsServer --------- 在服务器中安装sqlserver 数据库
    WIndowsServer ---------- 将本地文件映射到服务器
    windowsServer-------- 系统中调出文件扩展名
    SQLServer -------- 解决忘记sa 密码,创建一个新的
    SQLServer ---------- 附加数据库,以及解决附加时出现错误
    AJAX -------------- 如何使用ajax
    网络基础 ----------- osi 与 一些协议
    装系统---------- u盘 安装系统
    网络基础 ----------- 电脑设置为wifi站点
  • 原文地址:https://www.cnblogs.com/Tree0108/p/12115470.html
Copyright © 2020-2023  润新知