pandas打乱顺序
时间: 2023-12-17 17:29:01 浏览: 143
以下是使用pandas打乱顺序的两种方法:
1. 使用sample()函数打乱顺序:
```python
import pandas as pd
# 创建DataFrame
grades = [48,99,75,80,42,80,72,68,36,78]
df = pd.DataFrame({'ID': ["x%d" % r for r in range(10)], 'Grade': grades})
# 打乱顺序
df_shuffled = df.sample(frac=1)
# 输出打乱后的DataFrame
print(df_shuffled)
```
2. 使用reindex()函数和numpy的permutation()函数打乱顺序:
```python
import pandas as pd
import numpy as np
# 创建DataFrame
grades = [48,99,75,80,42,80,72,68,36,78]
df = pd.DataFrame({'ID': ["x%d" % r for r in range(10)], 'Grade': grades})
# 打乱顺序
df_shuffled = df.reindex(np.random.permutation(df.index))
# 输出打乱后的DataFrame
print(df_shuffled)
```
相关问题
pandas 某列打乱顺序
可以使用 pandas 的 `sample` 方法对某一列进行随机打乱顺序,示例如下:
```python
import pandas as pd
# 创建一个示例 DataFrame
df = pd.DataFrame({
'col1': [1, 2, 3, 4, 5],
'col2': ['a', 'b', 'c', 'd', 'e']
})
# 对 col2 列进行随机打乱顺序
df['col2'] = df['col2'].sample(frac=1).reset_index(drop=True)
print(df)
```
输出结果:
```
col1 col2
0 1 e
1 2 a
2 3 c
3 4 b
4 5 d
```
其中,`sample` 方法的 `frac` 参数表示抽取比例,这里设置为 1 表示抽取全部数据,`reset_index` 方法用于重置索引。
pandas.Dataframe打乱顺序代码
可以使用pandas的shuffle()函数来打乱DataFrame的顺序,代码如下:
import pandas as pd
df = pd.read_csv('data.csv') # 读取数据
df_shuffled = df.sample(frac=1) # 打乱顺序
print(df_shuffled.head()) # 输出前5行
阅读全文