実行したいこと
python3.9で以下のようなlist(date)から一つ一つの要素を選ぶ重みのlist(plist)を使って重みをつけてn個取り出そうとしています。
random.sample()だと重みをつけられず、random.choice()だと重複を許してしまいます。
どのようにすればよいのでしょうか。
使うデータ(例)
date
1[a,b,c,d,e,f,g,h,i,j,k,l,m,n]
plist
1[1,0.5,0.5,1,1,1,0.5,0.5,0.5,1,1,1,1,1]
n < dateの要素数 という条件のもと、ということでしょうか?
n のほうが大きいと重複せざるを得ないので。
date = ['a','b','c']
plist = [1, 10, 10]
のとき、どのような結果が出ることを期待していますか?
n<dateの要素数 という条件のもとです
date = ['a','b','c']
plist = [1, 10, 10]
のときn=1の場合は1/21でa、10/21でb、10/21でcを得たいです
n=2の場合はn=1と同じように一つの要素を得て、
それがaの場合は10/20でbかc、
それがbの場合は1/11でa、10/11でc、
それがcの場合は1/11でa、10/11でbを得たいです
回答3件
あなたの回答
tips
プレビュー