基于列值从数据帧中随机选择行

2024-04-24 04:30:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个熊猫数据框如下:

col1, col2, label
a    b      0
b    b ,    0
.
.
..........  0
..........  1

以及标签列的value_counts

df['label'].value_counts():

0: 200000
1: 10000

我想从值为“0”的标签中随机选择50000行,以便我的值\u计数变为:

0: 50000
1: 10000

Tags: 数据dfvalue标签labelcol2col1计数
1条回答
网友
1楼 · 发布于 2024-04-24 04:30:36

过滤每个值和每个值的^{}N值。然后,获取它们的索引,通过union连接,然后loc

s0 = df.label[df.label.eq(0)].sample(50000).index
s1 = df.label[df.label.eq(1)].sample(10000).index 

df = df.loc[s0.union(s1)]

当然,如果您只是得到所有的s1,您不需要在10000中指定10000:)它只是用于说明

相关问题 更多 >