python数据集获取与基本使用(sklearn自带的数据集、UCI数据集)
python數(shù)據(jù)集獲取(sklearn自帶的數(shù)據(jù)集、UCI數(shù)據(jù)集)
- 一、UCI數(shù)據(jù)集介紹
- 二、 sklearn自帶的小數(shù)據(jù)集
- sklearn 自帶數(shù)據(jù)集的常規(guī)使用
- 鳶尾花數(shù)據(jù)集:load_iris():用于分類任務(wù)的數(shù)據(jù)集
- 手寫數(shù)字?jǐn)?shù)據(jù)集load_digits()
- 乳腺癌數(shù)據(jù)集load-barest-cancer()
- 糖尿病數(shù)據(jù)集
- 波士頓房?jī)r(jià)數(shù)據(jù)集
- 體能訓(xùn)練數(shù)據(jù)集:
- 生成數(shù)據(jù)集
一、UCI數(shù)據(jù)集介紹
UCI數(shù)據(jù)集是一個(gè)常用的機(jī)器學(xué)習(xí)標(biāo)準(zhǔn)測(cè)試數(shù)據(jù)集,是加州大學(xué)歐文分校(University of CaliforniaIrvine)提出的用于機(jī)器學(xué)習(xí)的數(shù)據(jù)庫(kù)。機(jī)器學(xué)習(xí)算法的測(cè)試大多采用的便是UCI數(shù)據(jù)集了,其重要之處在于“標(biāo)準(zhǔn)”二字,新編的機(jī)器學(xué)習(xí)程序可以采用UCI數(shù)據(jù)集進(jìn)行測(cè)試,類似的機(jī)器學(xué)習(xí)算法也可以一較高下。
UCI機(jī)器學(xué)習(xí)庫(kù):http://archive.ics.uci.edu/ml/datasets.php
二、 sklearn自帶的小數(shù)據(jù)集
https://rosefun.blog.csdn.net/article/details/104407193
sklearn 的數(shù)據(jù)集種類
從買了data.org在線下載獲取的數(shù)集:sklearn.datasets.fetch_mldata(…)
其中的自帶的小的數(shù)據(jù)集為:sklearn.datasets.load_
sklearn 自帶數(shù)據(jù)集的常規(guī)使用
以手寫數(shù)據(jù)集 load_digits() 為例,
from sklearn import datasetsdigits = datasets.load_digits() keys = digits.keys() print(keys)Output:
dict_keys(['data', 'target', 'target_names', 'images', 'DESCR'])digits 數(shù)據(jù)集的屬性介紹
| 數(shù)據(jù)集介紹 | DESCR |
| 樣本數(shù)據(jù) | data |
| 標(biāo)簽數(shù)據(jù) | target |
| 標(biāo)簽名稱 | target_names |
| 圖像數(shù)據(jù) | images |
注:
1.data,target 均為 numpy.ndarray 數(shù)組
2.data, target, target_name 是 sklearn 自帶數(shù)據(jù)集通用的屬性
通用示例:
# 導(dǎo)入sklearn自帶數(shù)據(jù)集 from sklearn import datasets digits = datasets.load_digits()# 加載手寫數(shù)字?jǐn)?shù)據(jù)集 feature = digits.data# 創(chuàng)建特征矩陣 target = digits.target# 創(chuàng)建目標(biāo)向量鳶尾花數(shù)據(jù)集:load_iris():用于分類任務(wù)的數(shù)據(jù)集
數(shù)據(jù)介紹:
屬性介紹:見(jiàn)代碼注釋
這些數(shù)據(jù)集都可以在官網(wǎng)上查到,以鳶尾花為例,可以在官網(wǎng)上找到demo,
https://scikit-learn.org/stable/auto_examples/datasets/plot_iris_dataset.html
手寫數(shù)字?jǐn)?shù)據(jù)集load_digits()
手寫數(shù)字?jǐn)?shù)據(jù)集load_digits():用于多分類任務(wù)的數(shù)據(jù)集
數(shù)據(jù)介紹:
手寫數(shù)字?jǐn)?shù)據(jù)集:load_digits():用于分類任務(wù)或者降維任務(wù)的數(shù)據(jù)集。 1797張樣本圖片,每個(gè)樣本有64維特征(8*8像素的圖像)和一個(gè)[0, 9]整數(shù)的標(biāo)簽屬性介紹:
見(jiàn)代碼注釋
乳腺癌數(shù)據(jù)集load-barest-cancer()
乳腺癌數(shù)據(jù)集load-barest-cancer():簡(jiǎn)單經(jīng)典的用于二分類任務(wù)的數(shù)據(jù)集
官網(wǎng):https://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_breast_cancer.html#sklearn.datasets.load_breast_cancer
糖尿病數(shù)據(jù)集
糖尿病數(shù)據(jù)集:load-diabetes():經(jīng)典的用于回歸認(rèn)為的數(shù)據(jù)集,值得注意的是,這10個(gè)特征中的每個(gè)特征都已經(jīng)被處理成0均值,方差歸一化的特征值,
官網(wǎng):https://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_diabetes.html#sklearn.datasets.load_diabetes
波士頓房?jī)r(jià)數(shù)據(jù)集
數(shù)據(jù)介紹:
該數(shù)據(jù)集是一個(gè)回歸問(wèn)題。每個(gè)類的觀察值數(shù)量是均等的,共有 506 個(gè)觀察,13 個(gè)輸入變量和1個(gè)輸出變量。 每條數(shù)據(jù)包含房屋以及房屋周圍的詳細(xì)信息。其中包含城鎮(zhèn)犯罪率,一氧化氮濃度,住宅平均房間數(shù),到中心區(qū)域的加權(quán)距離以及自住房平均房?jī)r(jià)等等。波士頓房?jī)r(jià)數(shù)據(jù)集:load-boston():經(jīng)典的用于回歸任務(wù)的數(shù)據(jù)集
體能訓(xùn)練數(shù)據(jù)集:load-linnerud():經(jīng)典的用于多變量回歸任務(wù)的數(shù)據(jù)集,其內(nèi)部包含兩個(gè)小數(shù)據(jù)集:Excise是對(duì)3個(gè)訓(xùn)練變量的20次觀測(cè)(體重,腰圍,脈搏),physiological是對(duì)3個(gè)生理學(xué)變量的20次觀測(cè)(引體向上,仰臥起坐,立定跳遠(yuǎn))
svmlight/libsvm的每一行樣本的存放格式:
<label><feature-id>:<feature-value> <feature-id>:<feature-value> ....這種格式比較適合用來(lái)存放稀疏數(shù)據(jù),在sklearn中,用scipy sparse CSR矩陣來(lái)存放X,用numpy數(shù)組來(lái)存放Y
from sklearn.datasets import load_svmlight_file x_train,y_train=load_svmlight_file("/path/to/train_dataset.txt","")#如果要加在多個(gè)數(shù)據(jù)的時(shí)候,可以用逗號(hào)隔開(kāi)體能訓(xùn)練數(shù)據(jù)集:
體能訓(xùn)練數(shù)據(jù)集:load-linnerud():經(jīng)典的用于多變量回歸任務(wù)的數(shù)據(jù)集。
官網(wǎng):https://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_linnerud.html#sklearn.datasets.load_linnerud
生成數(shù)據(jù)集
生成數(shù)據(jù)集:可以用來(lái)分類任務(wù),可以用來(lái)回歸任務(wù),可以用來(lái)聚類任務(wù),用于流形學(xué)習(xí)的,用于因子分解任務(wù)的
用于分類任務(wù)和聚類任務(wù)的:這些函數(shù)產(chǎn)生樣本特征向量矩陣以及對(duì)應(yīng)的類別標(biāo)簽集合
make_blobs:多類單標(biāo)簽數(shù)據(jù)集,為每個(gè)類分配一個(gè)或多個(gè)正太分布的點(diǎn)集
make_classification:多類單標(biāo)簽數(shù)據(jù)集,為每個(gè)類分配一個(gè)或多個(gè)正太分布的點(diǎn)集,提供了為數(shù)據(jù)添加噪聲的方式,包括維度相關(guān)性,無(wú)效特征以及冗余特征等
make_gaussian-quantiles:將一個(gè)單高斯分布的點(diǎn)集劃分為兩個(gè)數(shù)量均等的點(diǎn)集,作為兩類
make_hastie-10-2:產(chǎn)生一個(gè)相似的二元分類數(shù)據(jù)集,有10個(gè)維度
make_circle和make_moom產(chǎn)生二維二元分類數(shù)據(jù)集來(lái)測(cè)試某些算法的性能,可以為數(shù)據(jù)集添加噪聲,可以為二元分類器產(chǎn)生一些球形判決界面的數(shù)據(jù)
#生成多類單標(biāo)簽數(shù)據(jù)集import numpy as np import matplotlib.pyplot as plt from sklearn.datasets.samples_generator import make_blobs center=[[1,1],[-1,-1],[1,-1]] cluster_std=0.3 X,labels=make_blobs(n_samples=200,centers=center,n_features=2,cluster_std=cluster_std,random_state=0) print('X.shape',X.shape) print("labels",set(labels))unique_lables=set(labels) colors=plt.cm.Spectral(np.linspace(0,1,len(unique_lables))) for k,col in zip(unique_lables,colors):x_k=X[labels==k]plt.plot(x_k[:,0],x_k[:,1],'o',markerfacecolor=col,markeredgecolor="k",markersize=14) plt.title('data by make_blob()') plt.show() #生成用于分類的數(shù)據(jù)集from sklearn.datasets.samples_generator import make_classification X,labels=make_classification(n_samples=200,n_features=2,n_redundant=0,n_informative=2,random_state=1,n_clusters_per_class=2) rng=np.random.RandomState(2) X+=2*rng.uniform(size=X.shape)unique_lables=set(labels) colors=plt.cm.Spectral(np.linspace(0,1,len(unique_lables))) for k,col in zip(unique_lables,colors):x_k=X[labels==k]plt.plot(x_k[:,0],x_k[:,1],'o',markerfacecolor=col,markeredgecolor="k",markersize=14) plt.title('data by make_classification()') plt.show()#生成球形判決界面的數(shù)據(jù) from sklearn.datasets.samples_generator import make_circles X,labels=make_circles(n_samples=200,noise=0.2,factor=0.2,random_state=1) print("X.shape:",X.shape) print("labels:",set(labels))unique_lables=set(labels) colors=plt.cm.Spectral(np.linspace(0,1,len(unique_lables))) for k,col in zip(unique_lables,colors):x_k=X[labels==k]plt.plot(x_k[:,0],x_k[:,1],'o',markerfacecolor=col,markeredgecolor="k",markersize=14) plt.title('data by make_moons()') plt.show()參考博客:
https://blog.csdn.net/qq_42887760/article/details/101292407
https://www.cnblogs.com/nolonely/p/6980160.html
總結(jié)
以上是生活随笔為你收集整理的python数据集获取与基本使用(sklearn自带的数据集、UCI数据集)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: SVM 调参策略
- 下一篇: php 如何查询数组,php