df.groupby(['target']).count()
เป้าหมาย | ข้อมูล |
---|---|
ไม่ | 103210 |
ค่าเป็นบวก | 211082 |
ตอนนี้ฉันมั่นใจข้อมูลใหญ่เกินไป ฉันต้องการจะลบ 50%ของแถวของใครค่า Target
คอลัมน์คือ Positive
. ฉันต้องทำยังมัน?
df.groupby(['target']).count()
เป้าหมาย | ข้อมูล |
---|---|
ไม่ | 103210 |
ค่าเป็นบวก | 211082 |
ตอนนี้ฉันมั่นใจข้อมูลใหญ่เกินไป ฉันต้องการจะลบ 50%ของแถวของใครค่า Target
คอลัมน์คือ Positive
. ฉันต้องทำยังมัน?
เพื่อให้ครึ่งหนึ่ง Positive
แถว, sample
50%ของคน Positive
ใช้แถว frac=0.5
แล้ว drop
พวกนั้น indexes:
indexes = df[df.target == 'Positive'].sample(frac=0.5).index
df = df.drop(indexes)
เพื่อให้แน่ 100K Positive
แถว, sample
100K Positive
ใช้แถว n=100_000
แล้ว concat
พวกเขาพร้อมกับ Negative
จำนวนแถว:
df = pd.concat([
df[df.target == 'Negative'],
df[df.target == 'Positive'].sample(n=100_000)
])