kyl*_*tor 23 python arrays numpy
我有一个由零组成的一维NumPy数组,如下所示:
array([0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1])
Run Code Online (Sandbox Code Playgroud)
我想快速"翻转"这些值,使得零变为1,并且变为零,从而产生如下的NumPy数组:
array([1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])
Run Code Online (Sandbox Code Playgroud)
这有一个简单的单行程吗?我查看了该fliplr()
函数,但这似乎需要NumPy维数为2或更大的数组.我确信这是一个相当简单的答案,但任何帮助都会受到赞赏.
gbo*_*ffi 68
你的Q中肯定有一些我不明白的东西......
无论如何
In [2]: from numpy import array
In [3]: a = array((1,0,0,1,1,0,0))
In [4]: b = 1-a
In [5]: print a ; print b
[1 0 0 1 1 0 0]
[0 1 1 0 0 1 1]
In [6]:
Run Code Online (Sandbox Code Playgroud)
YXD*_*YXD 11
您可能应该使用布尔数据类型的标志
a = np.array([0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], dtype=np.bool)
# or
b = ~a
b = np.logical_not(a)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
13068 次 |
最近记录: |