配列は200x200です。値は-600から100までです。正の値をそのまま95%に保ち、5% 95%に値する。否定は同じです。numpyを使用して1つの配列内のある値に5%の最大値を変更します
これは私のコードであり、とても醜いので改善したいと思っています。
idx_pos = np.where(x > 0.)
idx_pos_sorted = np.argsort(x[idx_pos])
n = len(idx_pos[0])
n_punc = int(n*percentage)
x[idx_pos[0][idx_pos_sorted[n_punc:]], idx_pos[1][idx_pos_sorted[n_punc:]]] = (
x[idx_pos[0][idx_pos_sorted[n_punc]], idx_pos[1][idx_pos_sorted[n_punc]]])
以下のヒストグラムは、配列の値です。