Numpy的核心array对象以及创建array的方法

array对象的背景:

  • Numpy的核心数据结构,就叫做array就是数组,array对象可以是一维数组,也可以是多维数组;
  • Python的List也可以实现相同的功能,但是array比List的优点在于性能好、包含数组元数据信息、大量的便捷函数;
  • Numpy成为事实上的Scipy、Pandas、Scikit-Learn、Tensorflow、PaddlePaddle等框架的“通用底层语言”
  • Numpy的array和Python的List的一个区别,是它元素必须都是同一种数据类型,比如都是数字int类型,这也是Numpy高性能的一个原因;

array本身的属性

  • shape:返回一个元组,表示array的维度
  • ndim:一个数字,表示array的维度的数目
  • size:一个数字,表示array中所有数据元素的数目
  • dtype:array中元素的数据类型

创建array的方法

  • 从Python的列表List和嵌套列表创建array
  • 使用预定函数arange、ones/ones_like、zeros/zeros_like、empty/empty_like、full/full_like、eye等函数创建
  • 生成随机数的np.random模块构建

array本身支持的大量操作和函数

  • 直接逐元素的加减乘除等算数操作
  • 更好用的面向多维的数组索引
  • 求sum/mean等聚合函数
  • 线性代数函数,比如求解逆矩阵、求解方程组

1. 使用Python的List和嵌套List创建一维的array和二维的array

2. 探索数组array的属性

x为一维的数组,X为二维的数组

3. 创建array的便捷函数

使用arange创建数字序列

arange([start], stop, [ step], dtype=None)

使用ones创建全是1的数组

np.ones(shape, dtype=None, order='C')

shape : int or tuple of ints Shape of the new array, e.g., (2, 3) or 2.

使用ones_like创建形状相同的数组

ones_like(a, dtype=float, order='C')

使用zeros创建全是0的数组

np.zeros(shape, dtype=None, order='C')

使用zeros_like创建形状相同的数组

np.zeros_like(a, dtype=None)

使用empty创建全是0的数组

empty(shape, dtype=float, order='C')
注意:数据是未初始化的,里面的值可能是随机值不要用,这个和zeros不同

使用empty_like创建形状相同的数组

empty_like(prototype, dtype=None)

使用full创建指定值的数组

np.full(shape, fill_value, dtype=None, order='C')

使用random模块生成随机数的数组

randn(d0, d1, ..., dn)

4. array本身支持的大量操作和函数

这些操作如果用Python实现需要写很多for循环,用numpy数组很容易

numpy入门—Numpy的核心array对象以及创建array的方法的更多相关文章

  1. numpy入门—numpy是什么

    numpy是什么?为什么使用numpy 使用numpy库与原生python用于数组计算性能对比

  2. Array对象的创建及其操作方法

    一.创建数组,即实例化数组对象      有三种方式:1. new Array();                          2.new Array(size);               ...

  3. 【PHP面向对象(OOP)编程入门教程】22.把对象串行化serialize()方法,__sleep()方法,__wakeup()方法

    有时候需要把一个对象在网络上传输,为了方便传输,可以把整个对象转化为二进制串,等到达另一端时,再还原为原来的对象,这个过程称之为串行化(也叫序列化), 就像我们现在想把一辆汽车通过轮船运到美国去,因为 ...

  4. JavaScript Array() 对象:push() 和 join() 方法

    <script> var fruits = ["Banana", "Orange", "Apple", "Mango& ...

  5. JavaScript对象的创建之工厂方法

    通过工厂的方式来创建Person对象,在createPerson中创建一个对象,然后为这个对象设置相应的属性和方法,之后返回这个对象. function createPerson(name, age) ...

  6. javascript常用内置对象——Array对象

    Array对象: 创建 Array 对象的语法: new Array(); new Array(元素个数); new Array(element0, element1, ..., elementn); ...

  7. NumPy之:NumPy简介教程

    目录 简介 安装NumPy Array和List 创建Array Array操作 sort concatenate 统计信息 reshape 增加维度 index和切片 从现有数据中创建Array 算 ...

  8. JavaScript Array 对象

    JavaScript Array 对象 Array 对象 Array 对象用于在变量中存储多个值: var cars = ["Saab", "Volvo", & ...

  9. Array对象(一)

    Array是JavaScript中的一个事先定义好的对象(也可以称作一个类),可以直接使用. 创建Array对象: var array = new Array(); 创建指定元素个数的Array对象: ...

随机推荐

  1. Java基础--序列化和反序列化

    作用:在很多应用中,需要对某些对象进行序列化,让它们离开内存空间,入住物理硬盘,以便长期保存.比如最常见的是Web服务器中的Session对象,当有 10万用户并发访问,就有可能出现10万个Sessi ...

  2. JZ-038-二叉树的深度

    二叉树的深度 题目描述 输入一棵二叉树,求该树的深度.从根结点到叶结点依次经过的结点(含根.叶结点)形成树的一条路径,最长路径的长度为树的深度. 题目链接: 二叉树的深度 代码 /** * 标题:二叉 ...

  3. JUC知识点总结(知识点见内部目录)

    目录 JUC是什么 锁 Synchronized VS Lock 实现差异 Synchronized & Lock 总结 Synchronized锁的对象是什么 生产者&消费者 只有两 ...

  4. jq全选、全不选、反选、单删、批量删除

    <!DOCTYPE html><html> <head> <meta charset="utf-8" /> <title> ...

  5. Laravel常用工具类

    工具类函数 Geom转成字符串 如果项目中有大量的计算经纬度需求,强烈建议使用PgSql的geometry类型 public static function formatGeomToStr($geom ...

  6. laravel 怎么获取public路径

    app_path()   app_path函数返回app目录的绝对路径: $path = app_path();   你还可以使用app_path函数为相对于app目录的给定文件生成绝对路径: $pa ...

  7. redis php使用实例

    redis的操作很多的,以前看到一个比较全的博客,但是现在找不到了.查个东西搜半天,下面整理一下php处理redis的例子,个人觉得常用一些例子.下面的例子都是基于php-redis这个扩展的. 1, ...

  8. Java GUI 实现发送邮件以及附件

    实现代码: 注意点: 需要的jar包:JavaMail API 和Java Activation Framework (JAF) ,下载可参考菜鸟教程 默认使用QQ邮箱发送,需要设置授权,设置--&g ...

  9. 1.SQL常用命令

    常用命令 连接命令 (1)conn[ect] 用法: conn 用户名/密码@网络服务名 [as sysdba/sysoper] 当用特权用户身份连接时,必须带上 as sysdba 或是 as sy ...

  10. python爬虫-使用线程池与使用协程的实例

    背景:爬取豆瓣电影top250的信息 使用线程池 import re from concurrent.futures import ThreadPoolExecutor import requests ...