美文网首页我爱编程
Numpy基础(二)

Numpy基础(二)

作者: 盗花 | 来源:发表于2017-02-24 21:56 被阅读53次

choose函数实现条件筛选

choose函数主要利用下标以及下标所在的位置对相关的数组进行筛选,看下面的示例:

In [129]: control
Out[129]: 
array([[1, 0, 1],
       [2, 1, 0],
       [1, 2, 2]])

In [130]: choose(control, [10, 11, 12]) # control中,1对应11,0对弈10,2对应12
Out[130]: 
array([[11, 10, 11],
       [12, 11, 10],
       [11, 12, 12]])
--------------------------------------------------------
In [131]: i0
Out[131]: 
array([[0, 1, 2],
       [3, 4, 5],
       [6, 7, 8]])

In [132]: i2
Out[132]: 
array([[20, 21, 22],
       [23, 24, 25],
       [26, 27, 28]])

In [133]: choose(control, [i0, 10, i2]) # control中,第一个元素1对应10,第二个元素[0, 1]0对应i0中的[0, 1]1,以此类推。
Out[133]: 
array([[10,  1, 10],
       [23, 10,  5],
       [10, 27, 28]])
------------------------------------------------------------
In [135]: a = array([[0, 1, 2], [10, 11, 12], [20, 21, 22]])

In [136]: a
Out[136]: 
array([[ 0,  1,  2],
       [10, 11, 12],
       [20, 21, 22]])

In [137]: a < 10
Out[137]: 
array([[ True,  True,  True],
       [False, False, False],
       [False, False, False]], dtype=bool)

In [138]: choose(a < 10, [a, 10]) # True可以看成是1,对应10;False看成0,对应a中相同位置的元素。
Out[138]: 
array([[10, 10, 10],
       [10, 11, 12],
       [20, 21, 22]])
------------------------------------------------------------
# 下面的例子将数组中所有小于10的值变成了10, 大于15的值变成了15.
In [139]: a
Out[139]: 
array([[ 0,  1,  2],
       [10, 11, 12],
       [20, 21, 22]])

In [140]: a < 10
Out[140]: 
array([[ True,  True,  True],
       [False, False, False],
       [False, False, False]], dtype=bool)

In [141]: a > 15
Out[141]: 
array([[False, False, False],
       [False, False, False],
       [ True,  True,  True]], dtype=bool)

In [142]: lt = a < 10

In [143]: a > 15
Out[143]: 
array([[False, False, False],
       [False, False, False],
       [ True,  True,  True]], dtype=bool)

In [144]: gt = a > 15

In [145]: gt
Out[145]: 
array([[False, False, False],
       [False, False, False],
       [ True,  True,  True]], dtype=bool)

In [146]: 2 * gt
Out[146]: 
array([[0, 0, 0],
       [0, 0, 0],
       [2, 2, 2]])

In [147]: gt * 2
Out[147]: 
array([[0, 0, 0],
       [0, 0, 0],
       [2, 2, 2]])

In [148]: a
Out[148]: 
array([[ 0,  1,  2],
       [10, 11, 12],
       [20, 21, 22]])

In [149]: lt = a < 10

In [150]: lt
Out[150]: 
array([[ True,  True,  True],
       [False, False, False],
       [False, False, False]], dtype=bool)

In [151]: gt = a > 15

In [152]: gt
Out[152]: 
array([[False, False, False],
       [False, False, False],
       [ True,  True,  True]], dtype=bool)

In [153]: choice = lt + 2 * gt

In [154]: choice
Out[154]: 
array([[1, 1, 1],
       [0, 0, 0],
       [2, 2, 2]])

In [155]: choose(choice, [a, 10, 15])
Out[155]: 
array([[10, 10, 10],
       [10, 11, 12],
       [15, 15, 15]])

相关文章

  • Numpy入门

    1、熟悉 numpy 的基础属性 2、numpy 创建 array 3、numpy的基础运算 4、numpy索引 ...

  • numpy基础(二)

    numpy 数组索引及切片 一维数组的索引以及切片 在numpy 中一维数组的切片和python中的列表一样。切片...

  • Numpy基础(二)

    基本的索引和切片 数组切片是原始数组的视图,这意味着数组不会被复制,视图上的任何修改都会直接反映到源数据。 继续,...

  • Numpy基础(二)

    choose函数实现条件筛选 choose函数主要利用下标以及下标所在的位置对相关的数组进行筛选,看下面的示例:

  • Numpy基础二

    1通用函数 通用函数(即ufunc)是一种对ndarray中的数据执行元素级的运算。我们可以将其看做是简单的函数(...

  • Numpy包的一些简单使用

    一、安装 Windows安装: 二、Numpy使用 使用要先导入包 2.1. numpy的基础 2.2. nump...

  • Numpy | 基础操作(矩阵)

    NumPy 基础操作 什么是 NumPy NumPy是Python中科学计算的基础包。它是一个Python库,提供...

  • numpy 基础

    numpy 基础 导入numpy 版本 np常用方法 numpy.array 的基本属性 numpy.array ...

  • Numpy(二)矩阵基础

    1 逻辑判断: 1.1 &: vector = numpy.array([5,10,15,20])equal_to...

  • Python-Numpy学习1

    安装numpy conda install numpy 或者是 pip install numpy 基础用法 ax...

网友评论

    本文标题:Numpy基础(二)

    本文链接:https://www.haomeiwen.com/subject/tuxgwttx.html