编写一个 Python 程序来对给定系列中的所有元素进行打乱
pythonpandasserver side programmingprogramming更新于 2024/6/21 0:12:17
假设您有一个数据框和对系列中的所有数据进行打乱的结果,
原始系列是 0 1 1 2 2 3 3 4 4 5 dtype: int64 打乱后的系列是: 0 2 1 1 2 3 3 5 4 4 dtype: int64
解决方案 1
定义一个系列。
应用随机打乱方法将系列数据作为参数并对其进行打乱。
data = pd.Series([1,2,3,4,5]) print(data) rand.shuffle(data)
示例
让我们看看下面的代码以更好地理解 −
import pandas as pd
import random as rand
data = pd.Series([1,2,3,4,5])
print("original series是\n",data)
rand.shuffle(data)
print("shuffles series is\n",data)
输出
原始系列是 0 1 1 2 2 3 3 4 4 5 dtype: int64 shuffles 系列是 0 2 1 3 2 1 3 5 4 4 dtype: int64
解决方案 2
定义一个系列。
创建 for 循环以访问系列数据并在 j 变量中生成随机索引。定义如下,
for i in range(len(data)-1, 0, -1): j = random.randint(0, i + 1)
将 data[i] 与随机索引位置的元素交换,
data[i], data[j] = data[j], data[i]
示例
让我们看下面的代码以更好地理解 −
import pandas as pd
import random
data = pd.Series([1,2,3,4,5])
print ("原始系列是 \n", data)
for i in range(len(data)-1, 0, -1):
j = random.randint(0, i + 1)
data[i], data[j] = data[j], data[i]
print ("改组后的序列为 :\n ", data)
输出
原始序列为 0 1 1 2 2 3 3 4 4 5 dtype: int64 改组后的序列为: 0 2 1 1 2 3 3 5 4 4 dtype: int64
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

