【发布时间】:2016-04-28 19:24:40
【问题描述】:
我想在 python 中计算这个简单的代码,给定一个矩阵,根据它的条目修改它。如果(i, j)-th 条目大于或等于1,则使其为a 的幂,否则为1。
import numpy
def restricted_power(k, n, d, a):
"""
:param d: a distance matrix
:param k, n: shape of d
:param a: a positive real number
:return: a modified distance matrix
"""
x = numpy.zeros((k,n))
for i in range(k):
for j in range(n):
if d[i, j] < 1:
x[i, j] = 1
else:
x[i, j] = d[i, j] ** a
return x
有没有办法在没有循环的情况下对此进行编码?
【问题讨论】:
-
什么是 x?为什么要在没有循环的情况下解决这个问题?
标签: python loops if-statement matrix