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

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

作者: 追求科技的足球 | 来源:发表于2019-03-28 09:50 被阅读11次

    下载了《机器学习实战:基于Scikit-Learn和TensorFlow》,然后阅读,对里面的代码给出一点注释和解析,从头开始吧!
    先学习第一个项目中的第一块(下载数据集):
    把自己加注释的代码放上:

    import os
    import tarfile
    from six.moves import urllib
    import pandas as pd
    
    DOWNLOAD_ROOT = "https://raw.githubusercontent.com/ageron/handson-ml/master/"  #网站路径
    HOUSING_PATH = "datasets/housing"   #存储路径
    HOUSING_URL = DOWNLOAD_ROOT + HOUSING_PATH + "/housing.tgz" #文件名
    
    def fetch_housing_data(housing_url = HOUSING_URL,housing_path = HOUSING_PATH):      #默认下载url和存储路径
        if not os.path.isdir(housing_path):   #如果不存在当前路径文件夹
            os.makedirs(housing_path)          #创建路径文件夹
        tgz_path = os.path.join(housing_path,"housing.tgz")   #连接路径,最终tgz_path为"datasets/housing/housing.tgz"
        urllib.request.urlretrieve(housing_url,tgz_path)   #下载到本地
        housing_tgz = tarfile.open(tgz_path)            #打开压缩包
        housing_tgz.extractall(path=housing_path)       #解压到路径
        housing_tgz.close()                             #关闭压缩包
    
    def load_housing_data(housing_path = HOUSING_PATH):
        csv_path = os.path.join(housing_path,"housing.csv")  #连接到csv的路径
        return pd.read_csv(csv_path)      #读取csv文件
    

    下面放上每个函数的作用:

    os.path.isdir():  判断某一路径是否为目录
    os.makedirs():  用于递归创建目录(可以一次创建多个目录)
    os.path.join():  连接两个或更多的路径名组件
    urllib.request.urlretrieve(): 将URL表示的网络对象复制到本地文件
    tarfile.open()、extractall()、close(): 三个函数配合解压文件
    pd.read_csv():  读取csv文件
    

    努力坚持更,希望能写完。。。

    相关文章

      网友评论

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

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