df.groupby(['target']).count()
Alvo | dados |
---|---|
Negativo | 103210 |
Positivo | 211082 |
Agora, a minha positivos de dados é muito grande. Eu quero eliminar 50% de linhas cujo valor no Target
coluna Positive
. Como posso fazer isso?
df.groupby(['target']).count()
Alvo | dados |
---|---|
Negativo | 103210 |
Positivo | 211082 |
Agora, a minha positivos de dados é muito grande. Eu quero eliminar 50% de linhas cujo valor no Target
coluna Positive
. Como posso fazer isso?
Para manter metade da Positive
linhas, sample
50% do Positive
linhas usando frac=0.5
e drop
esses índices:
indexes = df[df.target == 'Positive'].sample(frac=0.5).index
df = df.drop(indexes)
Mantenha exatamente 100K Positive
linhas, sample
100K Positive
linhas usando n=100_000
e concat
- os com o Negative
linhas:
df = pd.concat([
df[df.target == 'Negative'],
df[df.target == 'Positive'].sample(n=100_000)
])