Numpy 基本除法运算和模运算
基本算术运算符+、-和*隐式关联着通用函数add、subtract和multiply
在数组的除法运算中涉及三个通用函数divide、true_divide和floor_division,以及两个对应的运算符/和//
1. 数组的除法运算
import numpy as np
# divide函数在整数和浮点数除法中均只保留整数部分(python3中的np.divide == np.true_divide)
a = np.array([2,6,5])
b = np.array([1,2,3])
print (np.divide(a,b),np.divide(b,a))
# (array([2, 3, 1]), array([0, 0, 0]))
# true_divide函数与数学中的除法定义更为接近,即返回除法的浮点数结果而不作截断
print (np.true_divide(a,b),np.true_divide(b,a))
# (array([ 2. , 3. , 1.66666667]), array([ 0.5 , 0.33333333, 0.6 ]))
# floor_divide函数总是返回整数结果,相当于先调用divide函数再调用floor函数(floor函数将对浮点数进行向下取整并返回整数)
print (np.floor_divide(a,b),np.floor_divide(b,a))
# [2 3 1] [0 0 0]
c = 3.14 * b
print (np.floor_divide(c,b),np.floor_divide(b,c))
# [ 3. 3. 3.] [ 0. 0. 0.]
# /运算符相当于调用divide函数
print (a/b,b/a)
# (array([2, 3, 1]), array([0, 0, 0]))
# 运算符//对应于floor_divide函数
print (a//b,b//a)
# [2 3 1] [0 0 0]
print (c//b,b//c)
# [ 3. 3. 3.] [ 0. 0. 0.]
2. 模运算
# 计算模数或者余数,可以使用NumPy中的mod、remainder和fmod函数。也可以用%运算符
import numpy as np
# remainder函数逐个返回两个数组中元素相除后的余数
d = np.arange(-4,4)
print (np.remainder(d,2))
# [0 1 0 1 0 1 0 1]
# mod函数与remainder函数的功能完全一致
print (np.mod(d,2))
# [0 1 0 1 0 1 0 1]
# %操作符仅仅是remainder函数的简写(功能一样)
print ( d % 2 )
# [0 1 0 1 0 1 0 1]
# fmod函数处理负数的方式与remainder、mod和%不同。所得余数的正负由被除数决定,与除数的正负无关
print (np.fmod(d,2))
# [ 0 -1 0 -1 0 1 0 1]
Numpy 基本除法运算和模运算的更多相关文章
- Divide two numbers,两数相除求商,不能用乘法,除法,取模运算
问题描述:求商,不能用乘法,除法,取模运算. 算法思路:不能用除法,那只能用减法,但是用减法,超时.可以用位移运算,每次除数左移,相当于2倍. public class DividTwoInteger ...
- java 取模运算% 实则取余 简述 例子 应用在数据库分库分表
java 取模运算% 实则取余 简述 例子 应用在数据库分库分表 取模运算 求模运算与求余运算不同.“模”是“Mod”的音译,模运算多应用于程序编写中. Mod的含义为求余.模运算在数论和程序设计中 ...
- Java中"或"运算与"与"运算快慢的三三两两
先上结论 模运算比与运算慢20%到30% 这是通过实验的方式得到的结论.因为没有大大可以进行明确指导,所以我以最终运行的结果为准.欢迎指正. 测试代码 @Test public void test10 ...
- python负数除法与模运算
1.负数除法: >>> print 45/76>>> print -45/7-7 >>> print 45/-7-7 >>> p ...
- 数论 : 模运算法则(poj 1152)
题目:An Easy Problem! 题意:求给出数的最小进制. 思路:暴力WA: discuss中的idea: 给出数ABCD,若存在n 满足 (A* n^3 +B*n^2+C*n^1+D*n^0 ...
- (二)初识NumPy库(数组的操作和运算)
本章主要介绍的是ndarray数组的操作和运算! 一. ndarray数组的操作: 操作是指对数组的索引和切片.索引是指获取数组中特定位置元素的过程:切片是指获取数组中元素子集的过程. 1.一维数组的 ...
- mysql中的优化, 简单的说了一下垂直分表, 水平分表(有几种模运算),读写分离.
一.mysql中的优化 where语句的优化 1.尽量避免在 where 子句中对字段进行表达式操作select id from uinfo_jifen where jifen/60 > 100 ...
- poj 3980 取模运算
取模运算 Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 10931 Accepted: 6618 Description ...
- c++ 模运算
在数学里,"模运算"也叫"求余运算",用mod来表示模运算. 对于 a mod b 可以表示为 a = q(商)*b(模数) + r(余数),其中q表示商,b表 ...
随机推荐
- css自动换行如何设置?url太长会撑开页面
我们更新文章时如果有引用其他文章一般会带一个原文url,但这个链接如果太长的话会把内容的版块撑开,整个排版乱了.那我们能不能设置css自动换行呢?如下图所示,其实只要两个样式就能搞定 word-wra ...
- python中base64编码与解码
在python3中用base64进行编码和解码的时候特别注意: 题目要求: 准备一张.jpg图片,比如:mm.jpg,读取图片数据并通过b85encode加密之后写入到新文件mm.txt文件中,然后读 ...
- CentOS7下Docker的安装与使用
前言 简介 Docker 是一个开源的应用容器引擎,基于 Go 语言,并遵从 Apache2.0 协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到 ...
- js小数点精度问题
项目背景是用eharts 渲染数据,其中Y 轴的 刻度尺间隔用 interval,代码中如下: yAxis: [ { type : 'value', position:'left', min:minV ...
- React篇-滚动条下移的触发在react的生命周期分析
项目的要求是一个chartUI方式的聊天显示页面,根据聊天信息的不断增加,页面需要滑动一定距离,这样能看到最新的聊天结果,这样就需要在聊天结果返回之后触发滚动条向下滚动到一定的距离,代码如下: com ...
- "当前不会命中断点,没有与此行关联的可执行代码"可能和"断点位置不准确"有关
今天用VS调试代码遇到一件怪事,在函数结束前的return那一行打了断点,却报"当前不会命中断点,没有与此行关联的可执行代码".看了自己是debug模式,而且没有开启优化,不应该出 ...
- python变量交换及注释种类,注释注意事项/注释排查方法
#小练习作业 # texe1 = '能提笔安天下' # print(texe1) # string1 = '武能上' # string2 = '定乾坤' # print(string1,string2 ...
- js中的offsetLeft和style.left
(1)style.left是带单位"px"的,而offsetLeft没有单位,另外,style.left必须是内联样式,或者在JS中通过style.left赋值,否则取得的将为空字 ...
- 对k8s service的一些理解
服务service service是一个抽象概念,定义了一个服务的多个pod逻辑合集和访问pod的策略,一般把service称为微服务 举个例子一个a服务运行3个pod,b服务怎么访问a服务的pod, ...
- css3--之backface-visibility
使用CSS3 backface-visibility属性制作翻转动画效果: http://www.htmleaf.com/ziliaoku/qianduanjiaocheng/201504151 ...