[英]Python : Creating stacked histogram with number of different values in numpy array
[英]Creating a limit to find the sum of array values to a set number Numpy Python
我想創建一個函數,其中Arrays
和Arrays2
數組的總和等於val
。 該函數應該修改Arrays
和Arrays2
值,以便最后一個索引將數組中所有值的總和輸出為val
。 怎樣才能得到預期的輸出?
import numpy as np
Arrays = np.array([50, 30, 25, 87, 44, 68, 45])
Arrays2 = np.array([320])
val = 300
預期輸出:
[50, 30, 25, 87, 44, 64]
[300]
嘗試這個:
import numpy as np
Arrays = np.array([50, 30, 25, 87, 44, 68, 45])
Arrays2 = np.array([320])
val = 300
def asd(arr, v):
new_a = []
for i in arr:
if sum(new_a + [i]) < v:
new_a.append(i)
else:
new_a.append(v-sum(new_a))
break
return np.array(new_a)
print(asd(Arrays, val))
print(asd(Arrays2, val))
[50 30 25 87 44 64]
[300]
像這樣的東西?
import numpy as np
Arrays = np.array([50, 30, 25, 87, 44, 68, 45])
Arrays2 = np.array([320])
val = 300
def thisRareFunction(arr):
outArrays = []
acum = 0
for x in arr:
acum += x
if acum <=val:
outArrays.append(x)
else:
outArrays.append(x -(acum-val))
break
return outArrays
print(thisRareFunction(Arrays))
print(thisRareFunction(Arrays2))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.