Sklearn的datasets模块与自带数据集介绍

datasets 模块

用 dir() 函数查看 datasets 模块的所有属性和函数

import sklearn.datasets as datasets

# 列出 sklearn.datasets 模块中的所有属性和函数
print(dir(datasets))

datasets 模块下的数据集有三种类型:

(1)load系列的经典数据集,均为小型数据集,安装sklearn库时自带

(2)fetch系列下载数据集,较大的数据集,需要额外下载

(3)make系列生成数据集,可以生成各种形态分布的随机数据集

load系列经典数据集

一共有9个数据集,用 load_xxx() 形式的函数加载。


from sklearn.datasets import load_xxx
data = load_xxx()

load_xxx() 返回的数据类型是<class 'sklearn.utils.Bunch'> ,这是scikit-learn 中的一种数据结构,称为 Bunch 对象。它类似于 Python 的字典,存储键值对,可以通过键来访问相应的值,例如:data['key'];还可以通过属性方式访问存储的数据,例如: data.key。

数据集名称

调用函数

适用算法

数据规模(行×列)

波士顿房价数据集

load_boston()

回归

506×13

乳腺癌数据集

load_breast_cancer()

分类

569×30

糖尿病数据集

load_diabetes()

回归

442×10

手写数字数据集

load_digits()

分类

1797×64

鸢尾花数据集

load_iris()

分类

150×4

健身数据集

load_linnerud()

回归

20×3 (输入) + 20×3 (输出)

示例图像数据集

load_sample_image()

图像处理

单个图像

示例图像集合数据集

load_sample_images()

图像处理

2个图像

红酒数据集

load_wine()

分类

178×13

fetch系列下载数据集

数据集名称

调用函数

适用算法

数据规模(行×列)

说明

新闻分类数据集

fetch_20newsgroups()

分类

18,846×自由文本(训练:11,314,测试:7,532)

文本分类任务,返回原始文本

新闻分类向量化数据集

fetch_20newsgroups_vectorized()

分类

同上,已向量化为稀疏矩阵

文本分类任务,返回已向量化的稀疏矩阵

加州房价数据集

fetch_california_housing()

回归

20,640×8

预测房价中位数

树木类型数据集

fetch_covtype()

分类

581,012×54

森林覆盖类型的分类

KDD Cup 99 数据集

fetch_kddcup99()

分类/异常检测

4,898,431×41(训练集)

用于网络入侵检测和异常检测

LFW 人脸匹配数据集

fetch_lfw_pairs()

分类

2,200 对×自由文本(配对)

人脸验证任务

LFW 人脸识别数据集

fetch_lfw_people()

分类

13,233×2919(图像大小:62×47 像素)

人脸识别任务

Olivetti 面孔数据集

fetch_olivetti_faces()

分类/聚类

400×4096(图像大小:64×64 像素)

聚类和面部识别

OpenML 数据集

fetch_openml()

多种算法

依赖于指定的数据集

从 OpenML 平台下载各种类型的数据集

RCV1 数据集

fetch_rcv1()

分类

804,414×47,236(稀疏矩阵)

文本分类任务

物种分布数据集

fetch_species_distributions()

分类/回归

16,199×10

物种分布建模的回归或分类

make系列生成数据集

调用函数

生成数据形态

说明

make_biclusters()

双聚类数据

生成带有重叠或不重叠块结构的矩阵数据

make_blobs()

多簇数据

生成多个聚类的二维数据点

make_checkerboard()

棋盘格数据

生成具有棋盘格结构的矩阵数据

make_circles()

同心圆数据

生成二维同心圆形状的二元分类数据集

make_classification()

分类数据

生成用于分类问题的随机数据集

make_friedman1()

回归数据(非线性)

生成非线性回归模型数据(Friedman #1)

make_friedman2()

回归数据(非线性)

生成非线性回归模型数据(Friedman #2)

make_friedman3()

回归数据(非线性)

生成非线性回归模型数据(Friedman #3)

make_gaussian_quantiles()

高斯分位数数据

生成服从高斯分布的分类数据

make_hastie_10_2()

二分类数据

生成 Hastie 的二元分类数据集

make_low_rank_matrix()

低秩矩阵数据

生成指定秩的低秩矩阵

make_moons()

月亮形数据

生成二维的月亮形状二元分类数据集

make_multilabel_classification()

多标签分类数据

生成随机多标签分类数据集

make_regression()

回归数据

生成用于回归问题的随机数据集

make_s_curve()

S 曲线数据

生成 3D 的 S 形数据集

make_sparse_coded_signal()

稀疏编码信号数据

生成用于稀疏表示的信号数据

make_sparse_spd_matrix()

稀疏对称正定矩阵数据

生成稀疏对称正定矩阵

make_sparse_uncorrelated()

稀疏无关数据

生成稀疏的无相关特征数据集

make_spd_matrix()

对称正定矩阵数据

生成对称正定矩阵

make_swiss_roll()

瑞士卷数据

生成 3D 的瑞士卷形状数据集

经典数据集

鸢尾花数据集(三分类)

1、数据集内容

load_iris() 返回的是一个字典,字典中元素介绍如下:

键值

含义

数据类型

数据大小

元素类型

说明示例

data

特征数据

array

4 * 150

float 

[4.9, 3. , 1.4, 0.2]

target

类别

array

1 * 150

int

0, 1, 2

feature_names

特征名称

list

4

str

'sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)'

萼片长度、萼片宽度、花瓣长度、花瓣宽度

target_names

类别标签

array

3

str

'setosa', 'versicolor', 'virginica'

鸢尾花的三个类别

frame

None

filename

文件名

str

iris.csv

data_module

str

sklearn.datasets.data

DESCR

描述

str

对数据的描述

2、特征说明

特征

含义

sepal length (cm)

萼片长度(厘米)

sepal width (cm)

萼片宽度(厘米)

petal length (cm)

花瓣长度(厘米)

petal width (cm)

花瓣宽度(厘米)

3、读取鸢尾花数据的完整代码

# 导入鸢尾花数据集
from sklearn.datasets import load_iris

# 读取鸢尾花数据集
data = load_iris()
# 原始数据集是一个字典
# print(data)

# for i in data.keys():
#     print(i)

# 读取特征数据 4*150
feature_data = data['data']
# print(feature_data)
# 读取鸢尾花分类数据 1*150
target_data = data['target']
# print(target_data)
# 读取特征名称,4个特征
feature_name = data['feature_names']
# print(feature_name)
# 读取类别标签,3种类型
target_label = data['target_names']
# print(target_label)
 

波士顿房价数据集(回归)

1、数据集内容

load_boston() 返回的是一个字典,字典中的元素:

键值

含义

数据类型

数据大小

元素类型

说明示例

data

特征数据

array

13 * 506

float

 [4.7410e-02, 0.0000e+00, 1.1930e+01, ..., 2.1000e+01, 3.9690e+02, 7.8800e+00]

target

房价

array

1 * 506

float

21.6, 34.7

feature_names

特征名称

array

13

str

['CRIM', 'ZN', 'INDUS', 'CHAS', 'NOX', 'RM', 'AGE', 'DIS', 'RAD', 'TAX', 'PTRATIO', 'B', 'LSTAT']

filename

文件名

str

boston_house_prices.csv

data_module

str

sklearn.datasets.data

DESCR

描述

str

对数据的描述

2、特征说明

自变量

特征

英文释义

含义

CRIM

per capita crime rate by town

城镇人均犯罪率

ZN

proportion of residential land zoned for lots over 25,000 sq.ft.

占地面积超过 25,000 平方英尺的住宅用地比例

INDUS

proportion of non-retail business acres per town

每个城镇非零售商业用地比例

CHAS

Charles River dummy variable (= 1 if tract bounds river; 0 otherwise)

查尔斯河虚拟变量(1 = 区域靠近河流,0 = 其他)

NOX

nitric oxides concentration (parts per 10 million)

一氧化氮浓度(每千万份之一)

RM

average number of rooms per dwelling

每户平均房间数

AGE

proportion of owner-occupied units built prior to 1940

1940 年前建成的自住房比例

DIS

weighted distances to five Boston employment centres

到五个波士顿就业中心的加权距离

RAD

index of accessibility to radial highways

高速公路可达性指数

TAX

full-value property-tax rate per $10,000

每 $10,000 的全额财产税率

PTRATIO

pupil-teacher ratio by town

城市的学生与教师比例

B

1000(Bk - 0.63)^2 where Bk is the proportion of black people by town

城市中黑人比例

LSTAT

% lower status of the population

较低社会地位人口的百分比

因变量

因变量

英文释义

含义

MEDV

Median value of owner-occupied homes in $1000's

自住房屋的中位数价格(以 $1000 为单位)

3、读取波士顿数据的完整代码

# 导入波士顿数据集
from sklearn.datasets import load_boston

# 读取波士顿数据集
data = load_boston()
# 原始数据集是一个字典
# print(data)

# for i in data.keys():
#     print(i)

# 读取特征数据 13*506
feature_data = data['data']
# print(feature_data)
# print(feature_data.shape)
# 读取房价 1*506
target_data = data['target']
# print(target_data)
# 读取特征名称,13个特征
feature_name = data['feature_names']
# print(feature_name)

糖尿病数据集(回归)

1、数据集内容

load_diabetes() 返回的是一个字典,字典中的元素:

键值

含义

数据类型

数据大小

元素类型

说明示例

data

特征数据

array

10 * 442

float

[-0.04547248, -0.04464164, -0.0730303 , ..., -0.03949338,

        -0.00421986,  0.00306441]

target

房价

array

1 * 442

float

179., 185., 118.,

feature_names

特征名称

list

10

str

['age', 'sex', 'bmi', 'bp', 's1', 's2', 's3', 's4', 's5', 's6'] 

data_filename

特征数据文件名

str

diabetes_data.csv.gz

target_filename

因变量数据文件名

str

diabetes_target.csv.gz

frame

None

data_module

str

sklearn.datasets.data

DESCR

描述

str

对数据的描述

2、特征说明

自变量

特征

英文释义

含义

age

age in years

年龄(以年为单位)

sex

sex

性别

bmi

body mass index

身体质量指数

bp

average blood pressure

平均血压

s1

tc, total serum cholesterol

总血清胆固醇

s2

ldl, low-density lipoproteins

低密度脂蛋白

s3

hdl, high-density lipoproteins

高密度脂蛋白

s4

tch, total cholesterol / HDL

总胆固醇与 HDL 的比值

s5

ltg, possibly log of serum triglycerides level

血清甘油三酯水平的对数

s6

glu, blood sugar level

血糖水平

因变量

英文释义

含义

a quantitative measure of disease progression one year after baseline

一年后的疾病进展的定量衡量

3、读取糖尿病数据的完整代码

# 导入糖尿病数据集
from sklearn.datasets import load_diabetes

# 读取糖尿病数据集
data = load_diabetes()
# 原始数据集是一个字典
# print(data)

for i in data.keys():
    print(i)

# 读取特征数据 10*442
feature_data = data['data']
# print(feature_data)
# print(feature_data.shape)
# 读取因变量 1*442
target_data = data['target']
# print(target_data)
# 读取特征名称,10个特征
feature_name = data['feature_names']
# print(feature_name)

乳腺癌数据集(二分类)

1、数据集内容

load_breast_cancer()返回的是一个字典,字典中的元素:

键值

含义

数据类型

数据大小

元素类型

说明示例

data

特征数据

array

30 * 569

float

[1.969e+01, 2.125e+01, 1.300e+02, ..., 2.430e-01, 3.613e-01,

        8.758e-02]

target

类别

array

1 * 150

int

0, 1

feature_names

特征名称

array

30

str

['mean radius', 'mean texture', 'mean perimeter', 'mean area',

       'mean smoothness', 'mean compactness', 'mean concavity',

       'mean concave points', 'mean symmetry', 'mean fractal dimension',

       'radius error', 'texture error', 'perimeter error', 'area error',

       'smoothness error', 'compactness error', 'concavity error',

       'concave points error', 'symmetry error',

       'fractal dimension error', 'worst radius', 'worst texture',

       'worst perimeter', 'worst area', 'worst smoothness',

       'worst compactness', 'worst concavity', 'worst concave points',

       'worst symmetry', 'worst fractal dimension']

target_names

类别标签

array

2

str

['malignant', 'benign']

frame

None

filename

文件名

str

breast_cancer.csv

data_module

str

sklearn.datasets.data

DESCR

描述

str

对数据的描述

2、特征说明

以下原始特征的均值(mean)、标准误差(standard error)、以及“最差”或最大值(三个最差/最大值的均值)被计算为新的特征,最终得出 30 个特征。

原始特征

英文释义

含义

radius

mean of distances from center to points on the perimeter

半径(从中心到周长上的点的平均距离)

texture

standard deviation of gray-scale values

纹理(灰度值的标准差)

perimeter

perimeter

周长

area

area

面积

smoothness

local variation in radius lengths

平滑度(半径长度的局部变化)

compactness

perimeter^2 / area - 1.0

紧致度(周长的平方除以面积减去1)

concavity

severity of concave portions of the contour

凹陷度(轮廓凹陷部分的严重程度)

concave points

number of concave portions of the contour

凹陷点数(轮廓凹陷部分的数量)

symmetry

symmetry

对称性

fractal dimension

"coastline approximation" - 1

分形维度(“海岸线逼近”)- 1

3、读取乳腺癌数据的完整代码

# 导入乳腺癌数据集
from sklearn.datasets import load_breast_cancer

# 读取乳腺癌数据集
data = load_breast_cancer()
# 原始数据集是一个字典
# print(data)

# for i in data.keys():
#     print(i)

# 读取特征数据 30*569
feature_data = data['data']
# print(feature_data)
# 读取乳腺癌分类数据 1*569
target_data = data['target']
# print(target_data)
# 读取特征名称,30个特征
feature_name = data['feature_names']
# print(feature_name)
# 读取类别标签,2种类型
target_label = data['target_names']
# print(target_label)

红酒数据集(三分类)

1、数据集内容

load_wine()返回的是一个字典,字典中的元素:

键值

含义

数据类型

数据大小

元素类型

说明示例

data

特征数据

array

13 * 178

float

[1.316e+01, 2.360e+00, 2.670e+00, ..., 1.030e+00, 3.170e+00,

        1.185e+03]

target

类别

array

1 * 178

int

0, 1, 2

feature_names

特征名称

list

13

str

['alcohol', 'malic_acid', 'ash', 'alcalinity_of_ash', 'magnesium', 'total_phenols', 'flavanoids', 'nonflavanoid_phenols', 'proanthocyanins', 'color_intensity', 'hue', 'od280/od315_of_diluted_wines', 'proline']

target_names

类别标签

array

3

str

['class_0', 'class_1', 'class_2']

frame

None

DESCR

描述

str

对数据的描述

2、特征说明

特征

含义

Alcohol

酒精含量

Malic acid

苹果酸含量

Ash

灰分

Alcalinity of ash

灰分的碱度

Magnesium

镁含量

Total phenols

总酚含量

Flavanoids

黄酮类化合物含量

Nonflavanoid phenols

非黄酮类酚含量

Proanthocyanins

原花青素含量

Color intensity

颜色强度

Hue

色调

OD280/OD315 of diluted wines

稀释葡萄酒在280nm和315nm处的吸光度比值

Proline

脯氨酸含量

3、读取红酒数据的完整代码

# 导入红酒数据集
from sklearn.datasets import load_wine

# 读取红酒数据集
data = load_wine()
# 原始数据集是一个字典
# print(data)

# for i in data.keys():
#     print(i)

# 读取特征数据 13*178
feature_data = data['data']
# print(feature_data)
# 读取红酒分类数据 1*178
target_data = data['target']
# print(target_data)
# 读取特征名称,13个特征
feature_name = data['feature_names']
# print(feature_name)
# 读取类别标签,3种类型
target_label = data['target_names']
# print(target_label)

健身数据集

1、数据集内容

load_linnerud()返回的是一个字典,字典中的元素:

键值

含义

数据类型

数据大小

元素类型

说明示例

data

特征数据

array

3 * 20

float

[ 17., 251., 250.]

target

target数据

array

3 * 20

float

[189.,  37.,  52.]

feature_names

特征名称

list

3

str

['Chins', 'Situps', 'Jumps']

target_names

target名称

list

3

str

['Weight', 'Waist', 'Pulse']

frame

None

data_filename

自变量数据文件名

str

linnerud_exercise.csv

target_filename

因变量数据文件名

linnerud_physiological.csv

data_module

str

sklearn.datasets.data

DESCR

描述

str

对数据的描述

2、特征说明

特征

含义

Chins

引体向上次数

Situps

仰卧起坐次数

Jumps

跳跃次数

Weight

体重

Waist

腰围

Pulse

脉搏率(心率)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值