如何在 numpy 中将 [a,b,c] 转换为 [a+b+c, b+c, c]?
How to convert [a,b,c] to [a+b+c, b+c, c] in numpy?
如果我有一个数组 [a,b,c],我怎样才能以最有效的方式将它转换为 [a+b+c, b+c, c]?
(a, b, c) 是浮点数。
谢谢!
您可以使用 np.cumsum
:
import numpy as np
a = np.array([1, 2, 3])
print(np.cumsum(a[::-1])[::-1])
# Outputs [6 5 3]
对反转数组使用numpy.cumsum()
,然后再次反转。 cumsum([a,b,c])
returns [a,a+b,a+b+c]
.
import numpy as np
x = [3,7,14]
y = np.cumsum(x[::-1])[::-1]
print(y)
如果我有一个数组 [a,b,c],我怎样才能以最有效的方式将它转换为 [a+b+c, b+c, c]?
(a, b, c) 是浮点数。
谢谢!
您可以使用 np.cumsum
:
import numpy as np
a = np.array([1, 2, 3])
print(np.cumsum(a[::-1])[::-1])
# Outputs [6 5 3]
对反转数组使用numpy.cumsum()
,然后再次反转。 cumsum([a,b,c])
returns [a,a+b,a+b+c]
.
import numpy as np
x = [3,7,14]
y = np.cumsum(x[::-1])[::-1]
print(y)