在numpy矩阵中令小于0的元素改为0的实例

yipeiwu_com7年前Python基础

如下所示:

>>> import numpy as np
>>> a = np.random.randint(-5, 5, (5, 5))
>>> a
array([[-4, -4, -5, 2, 1],
  [-1, -2, -1, 3, 3],
  [-1, -2, 3, -5, 3],
  [ 0, -3, -5, 1, -4],
  [ 0, 3, 1, 3, -4]])
# 方式一
>>> np.maximum(a, 0)
array([[0, 0, 0, 2, 1],
  [0, 0, 0, 3, 3],
  [0, 0, 3, 0, 3],
  [0, 0, 0, 1, 0],
  [0, 3, 1, 3, 0]])
# 方式二
>>> (a + abs(a)) / 2
array([[0, 0, 0, 2, 1],
  [0, 0, 0, 3, 3],
  [0, 0, 3, 0, 3],
  [0, 0, 0, 1, 0],
  [0, 3, 1, 3, 0]])
# 方式三
>>> b = a.copy()
>>> b[b < 0] = 0
>>> b
array([[0, 0, 0, 2, 1],
  [0, 0, 0, 3, 3],
  [0, 0, 3, 0, 3],
  [0, 0, 0, 1, 0],
  [0, 3, 1, 3, 0]])
# 方式四
>>> np.where(a > 0, a, 0)
array([[0, 0, 0, 2, 1],
  [0, 0, 0, 3, 3],
  [0, 0, 3, 0, 3],
  [0, 0, 0, 1, 0],
  [0, 3, 1, 3, 0]])

以上这篇在numpy矩阵中令小于0的元素改为0的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

TensorFlow实现Batch Normalization

TensorFlow实现Batch Normalization

一、BN(Batch Normalization)算法 1. 对数据进行归一化处理的重要性 神经网络学习过程的本质就是学习数据分布,在训练数据与测试数据分布不同情况下,模型的泛化能力就大...

Python实现一个Git日志统计分析的小工具

前言 本文介绍的是利用Python实现的一个小工具,用于分析Git commit log,获得Git Project每个成员的简单行为数据。 Warning:代码量不能代表程序员能力水...

使用Python脚本将绝对url替换为相对url的教程

公司一个项目需要上传图片,一开始同事将图片上传后结合当前主机拼成了一个绝对的URL(http://192.168.1.1:888/m/getimg?filename=xxx.jp...

Python基于WordCloud制作词云图

Python基于WordCloud制作词云图

这篇文章主要介绍了python基于WordCloud制作词云图,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1. 导入需要的包pac...

使用python 将图片复制到系统剪贴中

需要安装pywin32,pillow 依赖包 #coding:utf-8 import win32clipboard as clip import win32con from PI...