df.groupby(['target']).count()
Țintă | date |
---|---|
Negativ | 103210 |
Pozitiv | 211082 |
Acum, mi pozitive de date este prea mare. Vreau să-l ștergeți de 50% din rânduri a căror valoare în Target
coloana este Positive
. Cum pot face asta?
df.groupby(['target']).count()
Țintă | date |
---|---|
Negativ | 103210 |
Pozitiv | 211082 |
Acum, mi pozitive de date este prea mare. Vreau să-l ștergeți de 50% din rânduri a căror valoare în Target
coloana este Positive
. Cum pot face asta?
Pentru a menține o jumătate de Positive
rânduri, sample
50% din Positive
rânduri, folosind frac=0.5
și drop
aceste indexuri:
indexes = df[df.target == 'Positive'].sample(frac=0.5).index
df = df.drop(indexes)
Pentru a păstra exact 100K Positive
rânduri, sample
100K Positive
rânduri, folosind n=100_000
și concat
ei cu Negative
rânduri:
df = pd.concat([
df[df.target == 'Negative'],
df[df.target == 'Positive'].sample(n=100_000)
])