大多数人了解 Pandas 及其在处理大数据文件方面的实用性。TensorFlow 提供了读取这种文件的方法。

前面章节中,介绍了如何在 TensorFlow 中读取文件,本节将重点介绍如何从 CSV 文件中读取数据并在训练之前对数据进行预处理。

本节将采用哈里森和鲁宾菲尔德于 1978 年收集的波士顿房价数据集(http://lib.stat.cmu.edu/datasets/boston),该数据集包括 506 个样本场景,每个房屋含 14 个特征:

  1. CRIM:城镇人均犯罪率
  2. ZN:占地 25000 平方英尺(1 英尺=0.3048 米)以上的住宅用地比例
  3. INDUS:每个城镇的非零售商业用地比例
  4. CHAS:查尔斯河(Charles River)变量(若土地位于河流边界,则为 1;否则为 0)
  5. NOX:一氧化氮浓度(每千万)
  6. RM:每个寓所的平均房间数量
  7. AGE:1940 年以前建成的自住单元比例
  8. DIS:到 5 个波士顿就业中心的加权距离
  9. RAD:径向高速公路可达性指数
  10. TAX:每万美元的全价值物业税税率
  11. PTRATIO:镇小学老师比例
  12. B:1000(Bk-0.63)2,其中 Bk 是城镇黑人的比例
  13. LSTAT:低地位人口的百分比
  14. MEDV:1000 美元自有住房的中位值

TensorFlow读取csv文件过程

  1. 导入所需的模块并声明全局变量:


     
  2. 定义一个将文件名作为参数的函数,并返回大小等于 BATCH_SIZE 的张量:

     
  3. 定义 f_queue 和 reader 为文件名:

     
  4. 这里指定要使用的数据以防数据丢失。对 .csv 解码并选择需要的特征。例如,选择 RM、PTRATIO 和 LSTAT 特征:

     
  5. 定义参数来生成批并使用 tf.train.shuffle_batch() 来随机重新排列张量。该函数返回张量 feature_batch 和 label_batch:

     
  6. 这里定义了另一个函数在会话中生成批:

     
  7. 使用这两个函数得到批中的数据。这里,仅打印数据;在学习训练时,将在这里执行优化步骤:

TensorFlow csv数据预处理

用前面章节提到的 TensorFlow 控制操作和张量来对数据进行预处理。例如,对于波士顿房价的情况,大约有 16 个数据行的 MEDV 是 50.0。在大多数情况下,这些数据点包含缺失或删减的值,因此建议不要考虑用这些数据训练。可以使用下面的代码在训练数据集中删除它们:

这里定义了一个张量布尔条件,若 MEDV 等于 50.0 则为真。如果条件为真则可使用 TensorFlow tf.where() 操作赋为零值。

TensorFlow从0到1之TensorFlow csv文件读取数据(14)的更多相关文章

  1. 从csv文件读取数据到二维vector

    void ReadDataFromCsv(std::string &filename, std::vector<std::vector<std::string> > & ...

  2. 从Excel、CSV文件获取数据

    #region 从Excel获取数据 /// <summary> /// 从Excel获取数据 /// </summary> /// <param name=" ...

  3. CSV文件读取类

    最近项目中,经常需要读取Csv文件.基本步骤是: (1)按行读取 (2)然后将一行数据按逗号,分割为字符串数组 (3)将各列字符串转换成相应类型的数据 ,如int double类型 写了一个简单的Cs ...

  4. Python文件处理(txt、csv文件读取)

    打开文件 使用Python内置的方法 open()可以打开文件 file object = open(file_name [, access_mode][, buffering]) file_name ...

  5. C++ 把数组数据存入 CSV 文件,以及读取 CSV 文件的数据

    1. CSV-百度百科 2. 代码 #pragma once //Microsoft Visual Studio 2015 Enterprise #include<iostream> #i ...

  6. TensorFlow从0到1之TensorFlow优化器(13)

    高中数学学过,函数在一阶导数为零的地方达到其最大值和最小值.梯度下降算法基于相同的原理,即调整系数(权重和偏置)使损失函数的梯度下降. 在回归中,使用梯度下降来优化损失函数并获得系数.本节将介绍如何使 ...

  7. PHP读取CSV文件把数据插入到数据库,本地没有问题,阿里云测试服务器不行

    原因是 本地windows和服务器linux编码不同,在代码中不要加编码转换的内容,而是把csv文件另存为utf-8文件上传就可以了,windows和Linux都就可以了. html代码: PHP端代 ...

  8. 用CSV文件读写数据的两种方式(转)

    导读:有时候我们需要对收集的数据做统计,并在页面提供显示以及下载.除了对传统的excel存取之外,对CSV文件的存取也很重要.本文列出了这两种操作的详细代码. 代码: <?php $file = ...

  9. 【Selenium + Python】之 Excel、CSV、XML文件读取数据并运用数据百度查询

    目录 从Excel读取数据进行百度搜索 从CSV读取数据进行百度搜索 从XML读取数据进行登录操作 附:其他学习资料(<xml.etree.ElementTree模块>.<pytho ...

随机推荐

  1. POJ2516

    题目链接:http://poj.org/problem?id=2516 解题思路: 最小费用最大流,这个没什么疑问.但此题小难点在于读题,大难点在于建图. 首先,供应量小于需求量的时候直接输出“-1” ...

  2. docker-compose 命令详解

    1.docker-compose的使用非常类似于docker命令的使用,但是需要注意的是大部分的compose命令都需要到docker-compose.yml文件所在的目录下才能执行. 2.[Linu ...

  3. 最优化之凸优化之Bregman算法

    本文介绍了Bregman迭代算法,Linearized Bregman算法(及在求解Basis Pursuit问题中的应用)和Split Bregman算法(及在求解图像TV滤波问题中的应用). 由于 ...

  4. TP5.0验证器使用方法

    比如我要在分类做一个验证器,首先要在你的后台模块先建立一个文件夹,比如我的后台模块是admin,那么你要在admin里面建立一个validate的文件夹然后再建立一个对应的php文件如下图 文件里面的 ...

  5. PHP链式操作原理

    1)第一种方法 <?php /* *类功能:实现数据库的连贯查询操作 */ class mysql_query{ var $tbl=’user’;//要操作的表名 var $limit=”;// ...

  6. mysql驱动包

    mysql驱动包和源码下载地址:https://mvnrepository.com/artifact/mysql/mysql-connector-java 下载 mysql-connector-jav ...

  7. Unity读取StreamingAssets路径下的文件

    /// <summary> ///读取StreamingAssets中的文件 /// </summary> /// <param name="path" ...

  8. 一看就懂之吐血整理的 Docker 学习笔记

    前言 随着devops的兴起,Docker 近年来越来越火,容器化概念也越来越火.此篇将带你瞬间入门Docker. Docker 概述 Docker 出现的背景 在我们的开发过程中,通常是这样的一种流 ...

  9. 【Leetcode】287. 寻找重复数(数组模拟链表的快慢指针法)

    寻找重复数 根据题意,数组中的数字都在1~n之间,所以数字的范围是小于数组的范围的,数组的元素可以和数组的索引相联系. 例如:nums[0] = 1 即可以将nums[0]作为索引 通过nums[0] ...

  10. 安卓到底是不是Linux

    有人说安卓就是 Linux,也有人说安卓是安卓.Linux 是 Linux,两者没什么关系,还有人说安卓用的是 Linux 的内核,那么它们之间到底是什么关系呢.要想得到这个问题的答案,我们要先弄清楚 ...