📜  随机洗牌 pandas 数据帧 - Python (1)

📅  最后修改于: 2023-12-03 14:58:41.323000             🧑  作者: Mango

随机洗牌 pandas 数据帧 - Python

在数据分析中,有时需要将数据集随机排序。pandas 库提供了 shuffle() 函数来洗牌数据集。

使用 shuffle() 函数随机洗牌

使用 shuffle() 函数可以轻松地对数据集进行随机排序,如下例所示:

import pandas as pd

# 创建数据集
df = pd.DataFrame({'A': ['a', 'b', 'c', 'd'], 'B': [1, 2, 3, 4], 'C': [0.1, 0.2, 0.3, 0.4]})

# 随机洗牌
df = df.sample(frac=1).reset_index(drop=True)
  • frac 参数表示需要随机挑选的行数比例(0~1),默认为 1;
  • reset_index(drop=True) 表示将索引重置为从 0 开始,且旧的索引会删除。
示例程序

下面是一个完整的示例程序,演示了如何使用 shuffle() 函数随机洗牌数据集。

import pandas as pd

# 创建数据集
df = pd.DataFrame({'A': ['a', 'b', 'c', 'd'], 'B': [1, 2, 3, 4], 'C': [0.1, 0.2, 0.3, 0.4]})

# 显示原始数据集
print('原始数据集:')
print(df)

# 随机洗牌
df = df.sample(frac=1).reset_index(drop=True)

# 显示洗牌后的数据集
print('洗牌后的数据集:')
print(df)

输出结果:

原始数据集:
   A  B    C
0  a  1  0.1
1  b  2  0.2
2  c  3  0.3
3  d  4  0.4
洗牌后的数据集:
   A  B    C
0  b  2  0.2
1  a  1  0.1
2  d  4  0.4
3  c  3  0.3

可以看到,洗牌后的数据集是随机排序的。

总结

本文介绍了如何使用 shuffle() 函数随机洗牌 pandas 数据帧,这是数据分析中的一个常见操作。