我有一個可能值的範圍,例如:Python:列表儘可能平均分佈的子集?
possible_values = range(100)
我與該範圍內的非系統性(但唯一)號的列表,例如:
somelist = [0, 5, 10, 15, 20, 33, 77, 99]
我想創建一個包含這些值的子集但長度儘可能均勻分佈在可能值範圍內的新列表(長度爲< len(somelist))。例如:
length_newlist = 2
newlist = some_function(somelist, length_newlist, possible_values)
print(newlist)
,然後這些理想的輸出類似
[33, 77]
所以我既不想進行隨機抽樣,也避免了等間隔的整數選擇一個樣本。我想根據一個分佈(這裏是一個統一的分佈)對可能值的區間進行抽樣。 有沒有一個功能或簡單的方法來實現這一點?
根據價值或在列表中的位置分發? –
我的意思是關於可能值的範圍。如果可能的值是從0到100,但列表是傾斜的,例如[0,5,10,15,20,33,77,99],我應該選擇兩個值,這將是[33,77],而不是[10,33](將在指數中平均分配)。我用這個例子編輯了我的答案,希望更清楚我的意思。 –