利用matplotlib绘画出二特征的散点图

实例的所有数据来源于吴恩达教授的机器学习数据,特此感谢。数据源可以前往course下载。

本文主要目地在于绘画二维的散点图,至于scatter的用法可以参见我之前的博客。

 
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LogisticRegression

def get_data(file_path):
    col_names = ['score1','score2','y']
    data = pd.read_csv(file_path,delimiter = ",",names=col_names)
#    x = data.values[:,:-1]
#    y = data.values[:,-1]
    return data


def draw_OriginPic(data):
    data0 = data[data['y']==0]
    data1 = data[data['y']==1]
    plt.scatter(data0['score1'],data0['score2'],c='r',marker='x',label='Admitted')
    plt.scatter(data1['score1'],data1['score2'],c='y',marker='o',label='UnAdmitted')
    plt.title('Scatter plot for trainSet')
    plt.xlabel('score1')
    plt.ylabel('score2')
    plt.legend()
    
#    
if __name__== '__main__':
    fileName = "G:\python\machine-learning-ex2\ex2\ex2data1.txt"
    data = get_data(fileName)
    draw_OriginPic(data)

很简单的一个实例,主要包括数据的导入导出,以及利用pandas做了一个简单的数据筛选。