Pandas随机选择数据

Pandas Randomly Data Choosing

我是 Pandas 的初学者。我有一个包含 10000 个不同用户信息的数据文件。此数据包含 5 列和 10000 行。这些列之一是用户的地区,它根据用户的居住地划分用户(它只定义了 7 个不同的位置,每个位置都有一些用户居住)。例如,在这 10000 名用户中,300 名用户居住在美国,250 名用户居住在加拿大…… 我想定义一个 DataFrame,其中包含五个随机的用户行,分别为:USA、Canada、LA、NY 和 Japan。此外,尺寸需要为 20*5。你能帮我怎么做吗? 我知道选择随机我需要使用

s = df.sample(n=5)

但是我如何定义从具有这些位置的用户中选择 5 个随机信息并定义维度?

您还可以sample from groups generated with groupby:

df.groupby('district').sample(n=5)

要将抽样限制在您可以预先过滤 df 的地区:

df[df['district'].isin(['USA', 'Canada', 'LA', 'NY', 'Japan'])].groupby('district').sample(n=5)

这是假设 'district' 是区列。另外,如果我理解正确的话,因为你是从 5 个地区抽取 5 个项目,所以最终 DataFrame 的维度应该是 (5*5)x5 = 25x5(25 行和 5 列)。

您需要 pandas 版本 >= 1.1.0 才能使用此方法。