我需要幫助。我有一個表中的這個陣列:
lycop = np.array([[14, 15, 16, 17, 18, 19, 20, 21, 22, 23],
[1, 1, 8, 24, 48, 58, 35, 16, 8, 1]])
lycop
array([[14, 15, 16, 17, 18, 19, 20, 21, 22, 23],
[ 1, 1, 8, 24, 48, 58, 35, 16, 8, 1]])
我必須計算媒體、var 和 std。
lycop_media = (lycop[0]*lycop[1]).sum()/lycop[1].sum()
lycop_media
18.83
lycop_std = lycop_var**1/2
lycop_std
1.09555
到目前為止一切都很好......然后我需要3個不同的陣列:
a1 : 媒體下的價值觀 - std ??<?????????
a1 = lycop[0][(lycop[0] < (lycop_media - lycop_std))]
a1
array([14, 15, 16, 17])
a2:媒體價值 標準??>???? ????
a2 = lycop[0][(lycop[0] > (lycop_media lycop_std))]
a2
array([20, 21, 22, 23])
a3 : a1 和 a2 之間的值所以?????????<??<???? ????
在這里我失去了它。我的嘗試:
a3 = [np.where((lycop[0] < lycop_media - lycop_std) & (lycop[0] < lycop_media lycop_std))]
a3
[(array([0, 1, 2, 3]),)]
這顯然是錯誤的。
a3= [((lycop_media - lycop_std) < 18 & 19 < (lycop_media lycop_std))]
a3
[True]
我知道是真的,但我需要獲取并排列數字,例如
陣列([18, 19])
一些想法?
uj5u.com熱心網友回復:
這只是您為 a1 和 a2 所做的擴展,但是您將 < 和 > 符號混淆了一半。
a3 = lycop[0](lycop[0] >= lycop_media - lycop_std) & (lycop[0] <= lycop_media lycop_std)]
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/519657.html
上一篇:獲取具有最小值的行
