美文网首页机器学习程序员
一个完整的机器学习项目——代码解析(二)

一个完整的机器学习项目——代码解析(二)

作者: 追求科技的足球 | 来源:发表于2019-04-01 22:17 被阅读30次

    基于《机器学习实战:基于Scikit-Learn和TensorFlow》
    今天完成第二次代码解析,包括数据分析、绘图和创建测试集
    1、数据分析

    housing = load_housing_data()
    print(housing.head())
    print(housing.info())
    

    函数作用:

    head():方法查看该数据集的前5行
    info():快速查看数据的描述,特别是总行数、每个属性的类型和非空值的数量
    

    2、绘图

    import matplotlib.pyplot as plt
    housing.hist(bins=50,figsize=(20,15))
    plt.show()
    

    函数作用:

    hist()绘制直方图
    bins是指直方图的总个数,个数越多,条形带越紧密 figsize是设置大小
    

    3、创建测试集

    import numpy as np
    
    def split_train_test(data,test_ratio):
        shuffled_indices = np.random.permutation(len(data)) #随机排列一个序列
        test_set_size = int(len(data) * test_ratio)         #测试集大小
        test_indices = shuffled_indices[:test_set_size]     #前面的test_set_size个为测试集
        train_indices = shuffled_indices[test_set_size:]    #后面的test_set_size个为训练集
        return data.iloc[train_indices],data.iloc[test_indices]  #返回训练集、测试集
    
    train_set,test_set = split_train_test(housing,0.2)
    print(len(train_set),"train+",len(test_set),"test")
    

    函数作用:

    np.random.permutation() :随机排列一个序列
    [:x]:选取数组前x个
    [x:]:选区数组后x个
    iloc:主要是通过行号获取行数据
    

    今天就到这里,继续加油欧!

    相关文章

      网友评论

        本文标题:一个完整的机器学习项目——代码解析(二)

        本文链接:https://www.haomeiwen.com/subject/lqumbqtx.html