numpy 逻辑运算方法介绍
在 NumPy 中,逻辑运算方法用于对数组中的元素进行逻辑操作,通常用于布尔数组,也可用于数值数组,非零值视为 True
,零值视为 False
。常见的逻辑运算方法有:
1. numpy.logical_and
逐元素进行逻辑与运算(AND),只有当两个数组对应位置的元素都为 True
时,结果为 True
。
示例:
import numpy as np
a = np.array([True, False, True, False])
b = np.array([True, True, False, False])
result = np.logical_and(a, b)
print(result) # [ True False False False]
2. numpy.logical_or
逐元素进行逻辑或运算(OR),只要两个数组中有一个对应位置的元素为 True
,结果即为 True
。
示例:
import numpy as np
a = np.array([True, False, True, False])
b = np.array([True, True, False, False])
result = np.logical_or(a, b)
print(result) # [ True True True False]
3. numpy.logical_xor
逐元素进行逻辑异或运算(XOR),当两个数组中对应位置的元素不相同时,结果为 True
。
示例:
import numpy as np
a = np.array([True, False, True, False])
b = np.array([True, True, False, False])
result = np.logical_xor(a, b)
print(result) # [False True True False]
4. numpy.logical_not
逐元素进行逻辑非运算(NOT),将 True
转换为 False
,将 False
转换为 True
。
示例:
import numpy as np
a = np.array([True, False, True, False])
result = np.logical_not(a)
print(result) # [False True False True]
5. numpy.equal
逐元素比较两个数组是否相等。如果相等,返回 True
;否则返回 False
。
示例:
import numpy as np
a = np.array([1, 2, 3])
b = np.array([1, 2, 4])
result = np.equal(a, b)
print(result) # [ True True False]
6. numpy.not_equal
逐元素比较两个数组是否不相等。如果不相等,返回 True
;否则返回 False
。
示例:
import numpy as np
a = np.array([1, 2, 3])
b = np.array([1, 2, 4])
result = np.not_equal(a, b)
print(result) # [False False True]
7. numpy.greater
逐元素比较两个数组,如果第一个数组的元素大于第二个数组的元素,返回 True
。
示例:
import numpy as np
a = np.array([1, 2, 3])
b = np.array([1, 2, 2])
result = np.greater(a, b)
print(result) # [False False True]
8. numpy.greater_equal
逐元素比较两个数组,如果第一个数组的元素大于或等于第二个数组的元素,返回 True
。
示例:
import numpy as np
a = np.array([1, 2, 3])
b = np.array([1, 2, 2])
result = np.greater_equal(a, b)
print(result) # [ True True True]
9. numpy.less
逐元素比较两个数组,如果第一个数组的元素小于第二个数组的元素,返回 True
。
示例:
import numpy as np
a = np.array([1, 2, 3])
b = np.array([1, 2, 4])
result = np.less(a, b)
print(result) # [False False True]
10. numpy.less_equal
逐元素比较两个数组,如果第一个数组的元素小于或等于第二个数组的元素,返回 True
。
示例:
import numpy as np
a = np.array([1, 2, 3])
b = np.array([1, 2, 4])
result = np.less_equal(a, b)
print(result) # [ True True True]
11. numpy.bitwise_and
按元素执行位与运算(通常用于整数数组)。与 logical_and
类似,但 bitwise_and
处理整数的二进制表示。
示例:
import numpy as np
a = np.array([1, 0, 1, 0], dtype=int)
b = np.array([1, 1, 0, 0], dtype=int)
result = np.bitwise_and(a, b)
print(result)
12. numpy.bitwise_or
按元素执行位或运算,用于整数的二进制表示。
示例:
import numpy as np
a = np.array([1, 0, 1, 0], dtype=int)
b = np.array([1, 1, 0, 0], dtype=int)
result = np.bitwise_or(a, b)
print(result)
13. numpy.bitwise_xor
按元素执行位异或运算,用于整数的二进制表示。
示例:
import numpy as np
a = np.array([1, 0, 1, 0], dtype=int)
b = np.array([1, 1, 0, 0], dtype=int)
result = np.bitwise_xor(a, b)
print(result)
总结
这些逻辑运算方法可以方便地对数组中的元素进行逐元素的比较和逻辑操作。它们广泛用于数组的过滤、选择、条件判断和掩码操作。
原文地址:https://blog.csdn.net/qq_27390023/article/details/142693936
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!