1. 鸢尾花 demo
检查数据最好的方法是将其可视化,将所有数据放到一张图表中,制作散点图(scatter plot)。但是如果数据不是二维数据,而是多维数据的话,散点图就不符合要求了,可以使用散点矩阵。散点图矩阵可以两两查看所有的特征。
pandas 有一个绘制散点图矩阵的函数,叫作scatter_matrix。矩阵的对角线是每个特征的直方图。
代码实现:
# -*- coding: UTF-8 -*-
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
import pandas as pd
import matplotlib.pyplot as plt
import mglearn
if __name__ == '__main__':
# 获取iris数据集 Bunch数据结构
iris_data = load_iris()
print iris_data.keys()
# 将样本数据分成训练和测试数据,默认的比例是(75%和15%)
X_train, X_test , y_train, y_test = train_test_split(iris_data['data'], iris_data['target'], random_state=0)
# print X_train.shape
# print X_test.shape
# 使用X_train数据制作散点矩阵
# 将iris_data转化成pandas的DataFramefeature_names
X_train_dastaframe = pd.DataFrame(X_train, columns=iris_data['feature_names'])
grid = pd.plotting.scatter_matrix(X_train_dastaframe, c=y_train, figsize=(15,15),
marker='o', hist_kwds={'bins':20}, s=60, alpha=.8, cmap=mglearn.cm3)
plt.show()
网友评论