python机器学习包sklearn自带和生成数据集

sklearn是基于python语言的机器学习工具包,是目前做机器学习项目当之无愧的第一工具。 sklearn自带了大量的数据集,可供我们练习各种机器学习算法。

  • sklearn.datasets
  1. 获取小数据集(本地加载):datasets.load_xxx( )
  2. 获取大数据集(在线下载):datasets.fetch_xxx( )
  3. 本地生成数据集(本地构造):datasets.make_xxx( )
数据集介绍
load_iris( )鸢尾花数据集:3类、4个特征、150个样本
load_boston( )波斯顿房价数据集:13个特征、506个样本
load_digits( )手写数字集:10类、64个特征、1797个样本
load_breast_cancer( )乳腺癌数据集:2类、30个特征、569个样本
load_diabets( )糖尿病数据集:10个特征、442个样本
load_wine( )红酒数据集:3类、13个特征、178个样本
load_files( )加载自定义的文本分类数据集
load_linnerud( )体能训练数据集:3个特征、20个样本
load_sample_image( )加载单个图像样本
load_svmlight_file( )加载svmlight格式的数据
make_blobs( )生成多类单标签数据集
make_biclusters( )生成双聚类数据集
make_checkerboard( )生成棋盘结构数组,进行双聚类
make_circles( )生成二维二元分类数据集
make_classification( )生成多类单标签数据集
make_friedman1( )生成采用了多项式和正弦变换的数据集
make_gaussian_quantiles( )生成高斯分布数据集
make_hastie_10_2( )生成10维度的二元分类数据集
make_low_rank_matrix( )生成具有钟形奇异值的低阶矩阵
make_moons( )生成二维二元分类数据集
make_multilabel_classification( )生成多类多标签数据集
make_regression( )生成回归任务的数据集
make_s_curve( )生成S型曲线数据集
make_sparse_coded_signal( )生成信号作为字典元素的稀疏组合
make_sparse_spd_matrix( )生成稀疏堆成的正定矩阵
make_sparse_uncorrelated( )使用稀疏的不相关设计生成随机回归问题
make_spd_matrix( )生成随机堆成的正定矩阵
make_swiss_roll( )生成瑞士卷曲线数据集
from sklearn import datasets
import matplotlib.pyplot as plt

# 查询模块
dir(datasets)
help(datasets)

# 1.载入内置数据集
test_data = datasets.load_iris()  # 载入数据
# test_data = datasets.load_boston()
# test_data = datasets.load_digits()
print(type(test_data))   # 查看数据类型 <class 'sklearn.utils.Bunch'>
features = test_data.data  # <class 'numpy.ndarray'>
target = test_data.target  # <class 'numpy.ndarray'>
print(features.shape, target.shape)

print(test_data.feature_names)  # 特征名称
print(test_data.target_names)   # 预测结果名

# 2.载入单一图像数据,只有这两个示例图片
img = datasets.load_sample_image('flower.jpg')
img = datasets.load_sample_image('china.jpg')
print(img.shape)
plt.imshow(img)
plt.show()

# 3. 生成数据集
data, target = datasets.make_blobs(n_samples=1000, n_features=2,
                                       centers=4, cluster_std=1)
data, target = datasets.make_classification(n_classes=4, n_samples=1000,
                                                n_features=2, n_informative=2,
                                                n_redundant=0, n_clusters_per_class=1)

print(data)
print(data.shape)
print(target)
plt.scatter(data[:, 0], data[:, 1], c=target)
plt.show()

x, y = datasets.make_regression(n_samples=100, n_features=10, n_targets=1,
                                noise=1.5, random_state=1)
print(x.shape, y.shape)
print(x)
print(y)
plt.scatter(x[:, 1], y)
plt.show()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值