数据分析时,我们经常会有这样的需求:将数据集按某一个维度拆分成若干数据子集、创建多个变量。如果手动去实现,工作量较大。我们可以通过locals()配合循环语句来实现这一需求。我们以鸢尾花数据集为例,我们按照花的种类将数据集拆分成数据子集,分别放到不同的变量中去。实现代码如下:

from sklearn.datasets import load_iris

iris = load_iris()
X = iris.data
y = iris.target

for i in range(3):
    locals()['iris_'+str(i)] = X[y == i]