Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 获取数据集洗牌的映射_Python_Scikit Learn - Fatal编程技术网

Python 获取数据集洗牌的映射

Python 获取数据集洗牌的映射,python,scikit-learn,Python,Scikit Learn,我正在使用scikit learn的shuffle函数来洗牌数据集。然而,我想知道洗牌的映射。例如,给定一个数据集D,假设我将其洗牌,那么我想知道实例的旧索引是什么。有没有快速的方法?想提供一个将当前索引映射到旧索引的词典吗?我不太熟悉scikit learn,但我认为您可以对数据集索引列表(即包含数字0..len(数据集)-1的列表)进行无序排列,然后使用无序排列的列表对数据集重新编制索引。希望它有意义 比如: from random import shuffle dataset = ["1"

我正在使用scikit learn的
shuffle
函数来洗牌数据集。然而,我想知道洗牌的映射。例如,给定一个数据集
D
,假设我将其洗牌,那么我想知道实例的旧索引是什么。有没有快速的方法?想提供一个将当前索引映射到旧索引的词典吗?

我不太熟悉scikit learn,但我认为您可以对数据集索引列表(即包含数字0..len(数据集)-1的列表)进行无序排列,然后使用无序排列的列表对数据集重新编制索引。希望它有意义

比如:

from random import shuffle
dataset = ["1", "2", "3"]
indices = range(len(dataset))
shuffle(indices)
shuffled_dataset = [dataset[i] for i in indices]
执行此代码后,索引列表将新索引映射到旧索引。例如,如果索引[0]=2,则无序_数据集中的元素0是数据集中的元素2

提供的代码不使用scikit learn,但应该可以使用scikit learn中的方法和类应用相同的思想