np=numpy++:具有附加便利功能的numpy

np的Python项目详细描述


np–将numpy数组创建为np[1,3,5],等等

np=numpy+方便的工具

很简单:首先导入np(numpy的别名):

importnp

创建一维数组:

np[1,3,5]

创建二维矩阵:

np.m[1,2,3::4,5,6::7,8,9]

对于数值python包numpy本身,请参见http://www.numpy.org/

np的思想是提供一种创建具有紧凑语法且不需要显式函数调用的numpy数组的方法。将模块名np设为可订阅的,同时仍然保持它本质上是numpy的别名,这样做是一种干净的方式。

欢迎任何反馈:koos.zevenhoven@aalto.fi

开始

要求

  • 最适合使用Python3.5+(也在3.4和2.7中进行了测试)
  • numpy(您应该使用python包管理器安装它,比如condapip

安装

np可以与pippip3一起安装:

$ pip install np

或者直接从源代码:

$ git clone https://github.com/k7hoven/np.git
$ cd np
$ python setup.py install

基本用法

甚至在使用np工具之前,使用numpy的一种流行方式就是将其导入为np

>>>importnumpyasnp>>>my_array=np.array([3,4,5])>>>my_2d_array=np.array([[1,2],[3,4]])

np最重要的特性是减少数组创建的繁琐,而其他一切都像以前一样工作。上述代码变为:

>>>importnp>>>my_array=np[3,4,5]>>>my_2d_array=np[[1,2],[3,4]]>>>my_matrix=np.m[1,2:3,4]>>>my_matrix2=np.m[1,2,3:...:4,5,6:...:7,8,9]>>>my_row_vector=np.m[1,2,3]

从上面的示例中可以看到,可以通过订阅np模块来创建numpy数组。因为大多数人无论如何都会将numpy导入为np,所以这不需要额外的名称来混乱名称空间。另外,语法np[1,2,3]类似于bytes文本b"asd"的语法。

上面还演示了如何使用np.m和冒号轻松创建矩阵(nxm)或行向量(1xm)。

np包还提供了一种方便的方法来确保某个东西是numpy数组,也就是说,指向numpy.asarray()

>>>importnp>>>mylist=[1,3,5]>>>mylist+[7,9,11][1,3,5,7,9,11]>>>np(mylist)+[7,9,11]array([8,12,16])

作为一个实验特性,还提供了给数组指定数据类型(numpy dtype)的快捷方式:

>>>np[1,2,3]array([1,2,3])>>>np.f[1,2,3]array([1.,2.,3.])>>>np.f2[1,2,3]array([1.,2.,3.],dtype=float16)>>>np.u4[1,2,3]array([1,2,3],dtype=uint32)>>>np.c[1,2,3]array([1.+0.j,2.+0.j,3.+0.j])

更改日志

1.0.0(2017-09-20)

  • 创建矩阵现在更加简单:

    np.m[1, 2: 3, 4] == np.array([[1, 2], [3, 4]])
    
    np.m[1, 2:
        :3, 4] == np.array([[1, 2], [3, 4]])
    
    np.m[1, 2] == np.array([[1, 2]])
    
    np.m[1, 2].T == np.array([[1],
                              [2]])
    
  • np(...)对应于np.asarray(...)

  • 对错误处理的许多改进

  • 输入快捷键的更多清理操作

0.2.0(2016-03-29)

  • 快速类型现在是np.inp.fnp.unp.c,或者 每个附加值的bytes个数: np.i4->;int32,np.u2->;uint16,np.c16->;完成128,… (仍有些实验性)
  • 删除了表示8位类型的旧np.i8和np.ui8 与对应于 字节。其余基于位的快捷方式已弃用,并将被删除 稍后。
  • 更好地处理python版本>;=3.5;现在甚至是以前导入的普通numpy 模块对象变成与np完全相同的对象。
  • 所有NP功能的测试
  • 运行数次numpy测试套件的测试速度慢得可笑 确保np不会影响numpy的功能。
  • 从需求中移除numpy,如果numpy 缺少(即使用包管理器(如conda或pip)安装它)
  • 更好地表示可订阅数组创建器对象和np/numpy模块。

0.1.4(2016-01-26)

  • 错误修复

0.1.2(2015-06-17)

  • 改进的实验数据类型快捷方式:np.f[1,2]、np.i32[1,2]等。

0.1.1(2015-06-17)

  • pypi友好自述文件

0.1.0(2015-06-17)

  • 第一个可分发版本
  • 简单的数组,如np[[1,2],[3,4]]
  • 短裤t代表np.asanyarray(obj):np(obj)
  • 实验数据类型快捷方式:np.f64[[1,2],[3,4]]

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何使用DBFlow进行迁移?   java无法从socket读取数据   java在JButton上使用鼠标运动监听器?   元素的java ArrayList链接和get IndexOutOfBoundsException   javascript如何在Java脚本中从ajax调用解析JSON对象   从数据库中获取信息并将其写入JTable。错误:java。lang.IndexOutOfBoundsException:索引:2,大小:2   spring如何使用Java SpringBoot在FCM推送通知中向IOS发送图像通知   java jsoup:解析某个标记的数据,该标记恰好位于某个特定标记之后   java没有HashMap的等式依赖于EntrySet。钥匙套?   未按预期评估java Maven属性(osmavenplugin)   类Java向ArrayList添加了用户输入,需要用另一个ArrayList中的变量分隔   JavaJSF丰富:每行呈现的数据列表?   集合Java 8按属性区分   在Java中,是否可以(静态)导入构造函数或局部变量?   安卓在ubuntu 10上安装java时出错64位   java是否应该hashCode()只使用equals()中使用的不可变字段的子集?   java如何创建ConcurrentMultiMap