Numpy中创建数组的9种方式小结

目录
  • 1、使用empty方法创建数组
  • 2、使用array创建数组
  • 3、使用zeros/ones创建数组
  • 4、使用arange创建数组
  • 5、使用linspace创建数组
  • 6、使用numpy.random.rand创建数组
  • 7、使用numpy.random.randn创建数组
  • 8、使用numpy.random.randint创建数组
  • 9、使用fromfunction创建数组

1、使用empty方法创建数组

该方式可以创建一个空数组,dtype可以指定随机数的类型,否则随机采用一种类型生成随机数。

import numpy as np

dt = np.numpy([2, 2], dtype=int)

2、使用array创建数组

使用array方法可以基于Python列表创建数组,在不设置dtype的情况下,从列表中自动推断数据类型。

import numpy as np

dt = np.array([1, 2, 3, 4, 5])
print('数组:', dt)
print('数据类型:', dt.dtype)
dt = np.array([1, 2, 3, 4, 5], dtype='f8')    # 64位浮点数
print('数组:', dt)
print('数据类型:', dt.dtype)

3、使用zeros/ones创建数组

调用zeros/ones方法会创建一个全为‘0’/‘1’值的数组,通常在数组元素位置,大小一致的情况下来生成临时数组。‘0’/‘1’充当占位符。

import numpy as np

dt = np.zeros([3, 5], dtype=int)
print('数组:', dt)
print('数据类型:', dt.dtype)
dt = np.ones([5, 3], dtype=float)
print('数组:', dt)
print('数据类型:', dt.dtype)

4、使用arange创建数组

使用arange方法可以基于一个数据范围来创建数组。

import numpy as np

dt = np.arange(10, 30, 5)
print('数组:', dt)
print('数据类型:', dt.dtype)

5、使用linspace创建数组

linspace是基于一个范围来构造数组,参数num是开始值和结束值之间需要创建多少个数值。
retstep会改变计算的输出,返回一个元组,而元组的两个元素分别是需要生成的数组和数组的步差值。

import numpy as np

dt = np.linspace(20, 30, num=5)
print('数组:', dt)
print('数据类型:', dt.dtype)
dt = np.linspace(20, 30, num=5, endpoint=False)
print('数组:', dt)
print('数据类型:', dt.dtype)
dt = np.linspace(20, 30, num=5, retstep=True)
print('元组:', dt)

6、使用numpy.random.rand创建数组

很多情况下手动创建的数组往往不能满足业务需求,因此需要创建随机数组。

import numpy as np

dt = np.random.rand(10)
print('数组:', dt)
print('数据类型:', dt.dtype)

7、使用numpy.random.randn创建数组

numpy.random.randn方法也是产生随机数组的一种方式,并且它能产生符合正态分布的随机数。

import numpy as np

dt = np.random.randn(3, 5)
print('数组:', dt)
print('数据类型:', dt.dtype)

8、使用numpy.random.randint创建数组

在10和30之间产生随机数,并从中取5个数值来构建数组。

import numpy as np

dt = np.random.randint(10, 30, 5)
print('数组:', dt)
print('数据类型:', dt.dtype)

9、使用fromfunction创建数组

fromfunction方法可以通过一个函数规则来创建数组。该方法中shape参数制定了创建数组的规则,shape=(4,5),最终创建的结果就是4行5列的二维数组。

import numpy as np

dt = np.fromfunction(lambda i, j:i + j, (4, 5), dtype=int)
print('数组:', dt)
print('数据类型:', dt.dtype)

到此这篇关于Numpy中创建数组的9种方式小结的文章就介绍到这了,更多相关Numpy 创建数组内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python使用numpy模块创建数组操作示例

    本文实例讲述了Python使用numpy模块创建数组操作.分享给大家供大家参考,具体如下: 创建数组 创建ndarray 创建数组最简单的方法就是使用array函数.它接收一切序列型的对象(包括其他数组),然后产生一个新的含有传入数据的Numpy数组. array函数创建数组 import numpy as np ndarray1 = np.array([1, 2, 3, 4]) ndarray2 = np.array(list('abcdefg')) ndarray3 = np.array([

  • Numpy中创建数组的9种方式小结

    目录 1.使用empty方法创建数组 2.使用array创建数组 3.使用zeros/ones创建数组 4.使用arange创建数组 5.使用linspace创建数组 6.使用numpy.random.rand创建数组 7.使用numpy.random.randn创建数组 8.使用numpy.random.randint创建数组 9.使用fromfunction创建数组 1.使用empty方法创建数组 该方式可以创建一个空数组,dtype可以指定随机数的类型,否则随机采用一种类型生成随机数. i

  • Java创建数组的几种方式总结

    1.一维数组的声明方式: type[] arrayName; 或 type arrayName[]; 附:推荐使用第一种格式,因为第一种格式具有更好的可读性,表示type[]是一种引用类型(数组)而不是type类型.建议不要使用第二种方式 下面是典型的声明数组的方式: // 声明整型数组 int[] intArray0 ; int intArray1 []; // 声明浮点型数组 float floatArray0 []; float[] floatArray1 ; // 声明布尔型数组 boo

  • 对Python中创建进程的两种方式以及进程池详解

    在Python中创建进程有两种方式,第一种是: from multiprocessing import Process import time def test(): while True: print('---test---') time.sleep(1) if __name__ == '__main__': p=Process(target=test) p.start() while True: print('---main---') time.sleep(1) 上面这段代码是在window

  • Spring中集成Groovy的四种方式(小结)

    groovy是一种动态脚本语言,适用于一些可变.和规则配置性的需求,目前Spring提供ScriptSource接口,支持两种类型,一种是 ResourceScriptSource,另一种是 StaticScriptSource,但是有的场景我们需要把groovy代码放进DB中,所以我们需要扩展这个. ResourceScriptSource:在 resources 下面写groovy类 StaticScriptSource:把groovy类代码放进XML里 DatabaseScriptSour

  • JavaScript中清空数组的三种方式

    方式1,splice var ary = [1,2,3,4]; ary.splice(0,ary.length); console.log(ary); // 输出 [],空数组,即被清空了 方式2,length赋值为0 这种方式很有意思,其它语言如Java,其数组的length是只读的,不能被赋值.如 int[] ary = {1,2,3,4}; ary.length = 0; Java中会报错,编译通不过. 而JS中则可以,且将数组清空了,如 var ary = [1,2,3,4]; ary.

  • Java中Http连接的两种方式(小结)

    在java中连接http,介绍两种方法,一种是java的HttpUrlConnection,另一种是apacha公司的httpClient,后者是第三方的类库需要从外部,导入,同时这也是第一次使用外部的类库,以后还会有很多需要导入外部类库的需求. http协议是基于tcp的一种协议. tcp是一种保证可靠连接的传输协议,通过三次握手,和丢失重传的机制保证数据的传输. 首先来看HttpUrlConnection 这个类是java自带的,直接import就行. 使用tcp连接的过程几乎都一样,htt

  • java实现/创建线程的几种方式小结

    进程与线程 进程可以简单理解成一个可执行程序例如.exe,在Windows中的任务管理器中可以查看每一个进程,进程是一次程序的执行,是程序在数据集合上运行的过程,是系统资源调度的一个单位.进程主要负责向操作系统申请资源.然而一个进程中,多个线程可以共享进程中相同的内存或文件资源.线程就是一个进程一个程序要完成所依赖的子任务,这些子任务便可以看作是一个线程. 第一种方式继承Thread类 从java源码可以看出Thread类本质上实现了Runnable接口的实例类,代表了线程的一个线程的实例,启动

  • JS中创建函数的三种方式及区别

    1.函数声明 function sum1(n1,n2){ return n1+n2; }; 2.函数表达式,又叫函数字面量 var sum2=function(n1,n2){ return n1+n2; }; 两者的区别:解析器会先读取函数声明,并使其在执行任何代码之前可以访问:而函数表达式则必须等到解析器执行到它所在的代码行才会真正被解释执行. 自执行函数严格来说也叫函数表达式,它主要用于创建一个新的作用域,在此作用域内声明的变量,不会和其它作用域内的变量冲突或混淆,大多是以匿名函数方式存在,

  • React中使用外部样式的3种方式(小结)

    一.关于css-in-js的认识 1.css-in-js是一种使用 js 编写 css 样式的 css 处理方案.它的实现方案有很多,比如styled-components.polished.glamorous(paypal 开源的,不再维护).radium.emotion等等. 2.其中最成熟的便是styled-components和emotion.它们真正意义上实现了组件化style,可以说是专门为 react 打造的. 二.styled-components 简介 styled-compo

  • SpringBoot中使用Servlet的两种方式小结

    目录 1.方式一(使用注解) 2.方式二(定义配置类) 1.方式一(使用注解) 首先,我们写一个Servlet.要求就是简单的打印一句话. 在MyServlet这个类的上方使用 @WebServlet 注解来创建Servlet即可. package com.songzihao.springboot.servlet; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import j

随机推荐