【问题标题】:Pandas - Sample all rows of N unique users/idsPandas - 对 N 个唯一用户/ID 的所有行进行采样
【发布时间】:2022-08-09 19:59:22
【问题描述】:

我正在尝试对数据中的 1000 个唯一用户进行抽样。这些可以是任何 1000 个用户。但我想提取 1000 个唯一用户的所有行。

输入

User_ID Ship Date
A454 8/2/2019
A454 9/2/2019
G658 9/2/2019
G658 9/2/2019
from random import sample
df[\'User_ID\'].sample(n=1000, random_state=1)

我尝试了上面的代码,但这只是给出了 1000 个唯一用户的唯一 ID,而不是所有行。

    标签: python pandas dataframe


    【解决方案1】:

    IIUC,获取unique 值、sample 并使用isin 和布尔索引进行切片:

    from random import sample
    
    out = df[df['User_ID'].isin(random.sample(df['User_ID'].unique(), n=1000))]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-24
      • 1970-01-01
      • 2013-02-05
      • 2016-07-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多