1
我想從「僅」在「標籤」列中的class = 1中抽樣2行。如何從python中的特定類中採樣行數?
在我的代碼,你會看到:
1)我從類樣品的所有行數= 1(4行)
2)然後,我從以前的數據幀樣本2行
但我相信肯定有更好的方法來做到這一點。
# Creation of the dataframe
df = pd.DataFrame(np.random.rand(12, 5))
label=np.array([1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3])
df['label'] = label
# Sampling
df1=df.loc[df['label'] == 1] #Extract ALL samples with class=1
df2 = pd.concat(g.sample(2) for idx, g in df1.groupby('label')) #Extract 2 samples from df1
df2
注意,這相當於你已經做什麼(SANS的毫無意義的「groupby」操作)。您已有的解決方案沒有任何問題。 –