如何打印出數組的百分比?如何在Python中顯示數組的百分比
例如:
如果我有
x = np.array([2,3,1,0,4,3,5,4,3,2,3,4,5,10,15,120,102,10])
你如何設置數組的百分比爲零?如果我想保持數組的前10%,並將數組的剩餘90%更改爲零?
預先感謝您?
如何打印出數組的百分比?如何在Python中顯示數組的百分比
例如:
如果我有
x = np.array([2,3,1,0,4,3,5,4,3,2,3,4,5,10,15,120,102,10])
你如何設置數組的百分比爲零?如果我想保持數組的前10%,並將數組的剩餘90%更改爲零?
預先感謝您?
你可以這樣做:
import numpy as np
x = np.array([2,3,1,0,4,3,5,4,3,2,3,4,5,10,15,120,102,10])
cut_off = int(0.1*len(x))
print(len(x), cut_off)
for idx in range(cut_off,len(x)):
x[idx] = 0
在NumPy中效率非常低。 –
做這個工作嗎?
x = np.array([2,3,1,0,4,3,5,4,3,2,3,4,5,10,15,120,102,10])
j=len(x)
k=(j/100)*10
for index in range(k,j):
x[index]=0
在NumPy中效率非常低。 –
x = [2,3,1,0,4,3,5,4,3,2,3,4,5,10,15,120,102,10]
index = 10 * len(x)/100
x[index:] = [0]*(len(x) - 1 index)
print x
>>> x = [2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
這裏是我會做什麼:
x = np.array([2,3,1,0,4,3,5,4,3,2,3,4,5,10,15,120,102,10])
change = round(0.9 * len(x)) # changing 90%
x[-change:] = 0 # change from last value towards beginning of array
print(x)
產生它的長度
[2 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
%的? – Marcin
該主題談論顯示一個百分比,但正文談到設置一個百分比。該主題是否需要修復? – davejagoda