如何从Pandas DataFrame中随机选择行

  • Post category:Python

从 Pandas DataFrame 中随机选择行可以使用 sample() 方法。以下是完整的攻略:

步骤1-导入 pandas 和 numpy 模块

import pandas as pd
import numpy as np

步骤2-创建一个 DataFrame

下面我们创建一个包含 10 行 3 列的 DataFrame:

# 创建一个包含随机数据的 DataFrame
df = pd.DataFrame(np.random.randn(10, 3), columns=list('ABC'))

可以使用 head() 方法查看前几行的数据:

print(df.head())

输出:

          A         B         C
0  0.237768 -0.995339  1.332936
1 -0.908357 -0.112122  0.211407
2 -0.194818 -1.267425 -0.312101
3 -0.422629 -0.288748  0.028286
4 -1.541135  1.822511  0.351057

步骤3-随机选择行

使用 sample() 方法随机选择数据,可以通过指定 n 参数来选择特定数量的行:

# 随机选择3行数据
random_rows = df.sample(n=3)

可以使用 print() 方法将结果输出:

print(random_rows)

输出:

          A         B         C
2 -0.194818 -1.267425 -0.312101
7  0.149360 -1.887365 -0.015014
9 -0.188405  0.389336  0.152407

步骤4-随机选择比例的行

除了选择特定数量的行之外,还可以选择特定比例的行,使用 frac 参数可以实现这个功能:

# 随机选择 30% 的行
random_rows_fraction = df.sample(frac=0.3)

可以使用 print() 方法将结果输出:

print(random_rows_fraction)

输出:

          A         B         C
7  0.149360 -1.887365 -0.015014
4 -1.541135  1.822511  0.351057
6 -0.537520 -0.009461  0.223201

完成以上4步操作,你已经学会了如何从 Pandas DataFrame 中随机选择行。