python 怎么把dataframe 不止打乱行 而是每列都打乱
时间: 2023-08-29 09:03:09 浏览: 105
要将DataFrame中的每一列都打乱顺序,可以使用pandas库中的sample函数。sample函数可以对DataFrame的行或列进行随机抽样,并返回一个新的DataFrame。以下是使用sample函数将DataFrame每一列都打乱顺序的示例代码:
```python
import pandas as pd
import numpy as np
# 创建示例DataFrame
data = {'A': [1, 2, 3, 4, 5],
'B': [6, 7, 8, 9, 10],
'C': [11, 12, 13, 14, 15]}
df = pd.DataFrame(data)
# 打印原始DataFrame
print("原始DataFrame:\n", df)
# 对DataFrame每一列进行打乱顺序
df_shuffled = df.apply(np.random.permutation)
# 打印打乱顺序后的DataFrame
print("打乱顺序后的DataFrame:\n", df_shuffled)
```
在上述代码中,先创建了一个包含三列的示例DataFrame。然后使用apply函数和numpy库中的random.permutation函数对DataFrame的每一列进行打乱。最后打印出打乱顺序后的DataFrame。
注意:此方法只会对DataFrame中的列进行打乱操作,而不会改变原始DataFrame的行的顺序。如果需要同时打乱行和列,可以先使用sample函数对行进行打乱,然后再对所得到的新的DataFrame使用apply函数和random.permutation进行列打乱。
阅读全文