如何列出 sklearn.datasets 对象的所有属性



来自R,在那里我可以用str()检查任何对象的内部结构,我对如何在Python中做同样的事情感到困惑。标准是使用 dir(my_object) ,但它没有列出所有属性,包括非常重要的属性。例如:

from sklearn import datasets
iris = datasets.load_iris()
dir(iris)

dir(iris)没有列出最重要的属性,如iris.datairis.target等。

我是否应该阅读文档以了解这些属性,或者有没有办法仅通过查看对象内部来找出答案?

数据集被加载到类似字典的对象中,因此您可以找到存储在字典中的数据,而不是包含标准字典方法的命名空间中的所有数据。

In [2]: iris = datasets.load_iris()
In [3]: iris.keys()
Out[3]: ['target_names', 'data', 'target', 'DESCR', 'feature_names']
以下是

一些属性:

In [10]: iris.data
Out[10]: array([[ 5.1,  3.5,  1.4,  0.2],
                [ 4.9,  3. ,  1.4,  0.2],
                [ 4.7,  3.2,  1.3,  0.2],
                ...
In [11]: iris.target
Out[11]: array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
                0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
                1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
                1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
                2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
                2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2])
In [13]: iris.target_names
Out[13]: array(['setosa', 'versicolor', 'virginica'], 
         dtype='|S10')
In [14]: iris.feature_names
Out[14]: ['sepal length (cm)',
          'sepal width (cm)',
          'petal length (cm)',
          'petal width (cm)']

最后一个将为您提供数据集的详细描述以及一些摘要统计信息。

In [15]: iris.DESCR
Out[15]: 'Iris Plants DatabasennNotesn-----nData Set Characteristics:n    :Number of Instances: 150 (50 in each of three 

我截断了 iris.datairis.DESCR 的输出。以下是数据集文档

相关内容

  • 没有找到相关文章