Python中文
首页
教程
问答
标签
搜索
登录
注册
添加numpy数组时避免溢出
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我想添加数据类型为uint8的numpy数组。我知道这些数组中的值可能大到足以发生溢出。所以我得到了如下信息:</p> <pre><code>a = np.array([100, 200, 250], dtype=np.uint8) b = np.array([50, 50, 50], dtype=np.uint8) a += b </code></pre> <p>现在,a是<code>[150 250 44]</code>。但是,我不希望出现溢出,而是希望uint8所允许的最大值太大。所以我想要的结果是<code>[150 250 255]</code>。</p> <p>我可以用下面的代码得到这个结果:</p> <pre><code>a = np.array([100, 200, 250], dtype=np.uint8) b = np.array([50, 50, 50], dtype=np.uint8) c = np.zeros((1,3), dtype=np.uint16) c += a c += b c[c>255] = 255 a = np.array(c, dtype=np.uint8) </code></pre> <p>问题是,我的数组非常大,因此创建第三个数据类型更大的数组可能是内存问题。是否有一种快速且更节省内存的方法来实现所描述的结果?</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>怎么样</p> <pre><code>>>> a + np.minimum(255 - a, b) array([150, 250, 255], dtype=uint8) </code></pre> <p>通常,使用获取数据类型的最大值</p> <pre><code>np.iinfo(np.uint8).max </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
创建一个python程序,从websi中提取文件
10 回答
创建一个python程序,告诉我名字和出生年份的人的年龄
1 回答
创建一个Python程序,它接受一个简短的描述并从给定的集合返回一个解决方案(使用nlp)
7 回答
创建一个python程序,用户在其中输入一个月,它会告诉您y的下一个月
3 回答
创建一个python程序,要求用户输入一个偶数奇数
1 回答
创建一个Python程序来修改名称以digi结尾的目录的文本文件
8 回答
创建一个python程序来猜测用户的“秘密号码”?
9 回答
创建一个python算法来训练keras模型来预测一个大的整数序列
4 回答
创建一个python类,它被视为一个列表,但是有更多的特性?
3 回答
创建一个Python类,我可以将其序列化为一个嵌套的JSON obj
5 回答
创建一个python类来查找直线的斜率和长度
8 回答
创建一个Python网络爬虫来获取谷歌Play商店应用程序的元数据
2 回答
创建一个Python网页
6 回答
创建一个python脚本,不断从excel文件中读取数据并进行计算
6 回答
创建一个python脚本,使用tcpdump计算到达网站的数据包数量?
5 回答
创建一个Python脚本,可以运行其他SAS程序并更新Excel工作簿。
6 回答
创建一个python脚本,它将读取csv文件,并使用该输入从web抓取数据finviz.com网站然后将数据导出到csv fi中
6 回答
创建一个python脚本,用mysql数据库中的结构和数据文件创建一个sql转储
6 回答
创建一个python脚本,该脚本将对某个键进行文本文件搜索,并将编号复制到新文件中
9 回答
创建一个Python脚本,该脚本连接到特定端口(SMTP)上的一系列IP
5 回答