plt.scatter(X[:50,0], X[:50, 1], color = ‘red’, marker = ‘o’, label = ‘setosa’)

我在这里有一个关于plt.scatter的新手问题。

我正在做一些机器学习教程,我们正在分析两种花的花瓣长度。

df = pd.read_csv('https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data', header = None)print(df.tail())y = df.iloc[0:100,4].values                         #这将打印出数据集的第5列。y = np.where(y == 'Iris-setosa', -1, 1)             #当y中含有'Iris-setosa'时,将返回-1,否则返回1。X = df.iloc[0:100, [0,2]].values                    #Iris数据集的第1列和第3列在线                                           #打印第1列和第3列plt.scatter(X[:50,0],     X[:50, 1],    color = 'red',  marker = 'o', label = 'setosa')plt.scatter(X[50:100, 0], X[50:100, 1], color = 'blue', marker = 'x', label = 'versicolor')

我不太明白为什么在每个plt.scatter行中,都有两个X[:50,0]和X[:50, 1]。它们的目的是什么?我以为plt.scatter是用来展示散点图中的一种类型物品的。我以为它会像这样:你知道从第0行到第50行,你想绘制某一种花,所以它只是X[:50,0],依此类推…

非常感谢你对这个问题的任何建议。

输入图片描述


回答:

数据存储在一个2 x 50的数组中。所以X[50,0]可能是50片叶子的宽度,而X[1,50]可能是同一50片叶子的长度。因此,你可以绘制宽度与长度的关系图,例如。这种组合构成了一组图表。数据将用红色圆圈表示。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注