Python 用样本洗牌一列数据

Python 用样本洗牌一列数据,python,pandas,Python,Pandas,当我做下面的事情时,我似乎得到了原始的df train['col1'] = train['col1'].sample(frac=1) 如果我使用.values,我会得到我想要的洗牌: train['col1'] = train['col1'].sample(frac=1).values 我不清楚为什么会发生这种情况-有什么见解吗?因为没有.values的版本保留索引,列保留其顺序

当我做下面的事情时,我似乎得到了原始的df

train['col1'] = train['col1'].sample(frac=1)
如果我使用.values,我会得到我想要的洗牌:

train['col1'] = train['col1'].sample(frac=1).values

我不清楚为什么会发生这种情况-有什么见解吗?

因为没有
.values
的版本保留
索引,列保留其顺序