TensorFlow 读取CSV数据的实例
TensorFlow 读取CSV数据原理在此就不做详细介绍,直接通过代码实现:
方法一:
详细读取tf_read.csv 代码
#coding:utf-8 import tensorflow as tf filename_queue = tf.train.string_input_producer(["/home/yongcai/tf_read.csv"]) reader = tf.TextLineReader() key, value = reader.read(filename_queue) record_defaults = [[1.], [1.], [1.], [1.]] col1, col2, col3, col4 = tf.decode_csv(value, record_defaults=record_defaults) features = tf.stack([col1, col2, col3]) init_op = tf.global_variables_initializer() local_init_op = tf.local_variables_initializer() with tf.Session() as sess: sess.run(init_op) sess.run(local_init_op) # Start populating the filename queue. coord = tf.train.Coordinator() threads = tf.train.start_queue_runners(coord=coord) try: for i in range(30): example, label = sess.run([features, col4]) print(example) # print(label) except tf.errors.OutOfRangeError: print 'Done !!!' finally: coord.request_stop() coord.join(threads)
tf_read.csv 数据:
-0.76 15.67 -0.12 15.67 -0.48 12.52 -0.06 12.51 1.33 9.11 0.12 9.1 -0.88 20.35 -0.18 20.36 -0.25 3.99 -0.01 3.99 -0.87 26.25 -0.23 26.25 -1.03 2.87 -0.03 2.87 -0.51 7.81 -0.04 7.81 -1.57 14.46 -0.23 14.46 -0.1 10.02 -0.01 10.02 -0.56 8.92 -0.05 8.92 -1.2 4.1 -0.05 4.1 -0.77 5.15 -0.04 5.15 -0.88 4.48 -0.04 4.48 -2.7 10.82 -0.3 10.82 -1.23 2.4 -0.03 2.4 -0.77 5.16 -0.04 5.15 -0.81 6.15 -0.05 6.15 -0.6 5.01 -0.03 5 -1.25 4.75 -0.06 4.75 -2.53 7.31 -0.19 7.3 -1.15 16.39 -0.19 16.39 -1.7 5.19 -0.09 5.18 -0.62 3.23 -0.02 3.22 -0.74 17.43 -0.13 17.41 -0.77 15.41 -0.12 15.41 0 47 0 47.01 0.25 3.98 0.01 3.98 -1.1 9.01 -0.1 9.01 -1.02 3.87 -0.04 3.87
方法二:
详细读取 Iris_train.csv, Iris_test.csv 代码
#coding:utf-8 import tensorflow as tf import os os.chdir("/home/yongcai/") print(os.getcwd()) def read_data(file_queue): reader = tf.TextLineReader(skip_header_lines=1) key, value = reader.read(file_queue) defaults = [[0], [0.], [0.], [0.], [0.], ['']] Id, SepalLengthCm, SepalWidthCm, PetalLengthCm, PetalWidthCm, Species = tf.decode_csv(value, defaults) preprocess_op = tf.case({ tf.equal(Species, tf.constant('Iris-setosa')): lambda: tf.constant(0), tf.equal(Species, tf.constant('Iris-versicolor')): lambda: tf.constant(1), tf.equal(Species, tf.constant('Iris-virginica')): lambda: tf.constant(2), }, lambda: tf.constant(-1), exclusive=True) return tf.stack([SepalLengthCm, SepalWidthCm, PetalLengthCm, PetalWidthCm]), preprocess_op def create_pipeline(filename, batch_size, num_epochs=None): file_queue = tf.train.string_input_producer([filename], num_epochs=num_epochs) example, label = read_data(file_queue) min_after_dequeue = 1000 capacity = min_after_dequeue + batch_size example_batch, label_batch = tf.train.shuffle_batch( [example, label], batch_size=batch_size, capacity=capacity, min_after_dequeue=min_after_dequeue ) return example_batch, label_batch # x_train_batch, y_train_batch = create_pipeline('Iris-train.csv', 50, num_epochs=1000) x_test, y_test = create_pipeline('Iris-test.csv', 60) init_op = tf.global_variables_initializer() local_init_op = tf.local_variables_initializer() # output read data result with tf.Session() as sess: sess.run(init_op) sess.run(local_init_op) coord = tf.train.Coordinator() thread = tf.train.start_queue_runners(coord=coord) try: example, label = sess.run([x_test, y_test]) print example print label except tf.errors.OutOfRangeError: print 'Done !!!' finally: coord.request_stop() coord.join(threads=thread)
Iris_train.csv 数据:
Id SepalLengthCm SepalWidthCm PetalLengthCm PetalWidthCm Species 21 5.4 3.4 1.7 0.2 Iris-setosa 22 5.1 3.7 1.5 0.4 Iris-setosa 23 4.6 3.6 1 0.2 Iris-setosa 24 5.1 3.3 1.7 0.5 Iris-setosa 25 4.8 3.4 1.9 0.2 Iris-setosa 26 5 3 1.6 0.2 Iris-setosa 27 5 3.4 1.6 0.4 Iris-setosa 28 5.2 3.5 1.5 0.2 Iris-setosa 29 5.2 3.4 1.4 0.2 Iris-setosa 30 4.7 3.2 1.6 0.2 Iris-setosa 31 4.8 3.1 1.6 0.2 Iris-setosa 32 5.4 3.4 1.5 0.4 Iris-setosa 33 5.2 4.1 1.5 0.1 Iris-setosa 34 5.5 4.2 1.4 0.2 Iris-setosa 35 4.9 3.1 1.5 0.1 Iris-setosa 36 5 3.2 1.2 0.2 Iris-setosa 37 5.5 3.5 1.3 0.2 Iris-setosa 38 4.9 3.1 1.5 0.1 Iris-setosa 39 4.4 3 1.3 0.2 Iris-setosa 40 5.1 3.4 1.5 0.2 Iris-setosa 41 5 3.5 1.3 0.3 Iris-setosa 42 4.5 2.3 1.3 0.3 Iris-setosa 43 4.4 3.2 1.3 0.2 Iris-setosa 44 5 3.5 1.6 0.6 Iris-setosa 45 5.1 3.8 1.9 0.4 Iris-setosa 46 4.8 3 1.4 0.3 Iris-setosa 47 5.1 3.8 1.6 0.2 Iris-setosa 48 4.6 3.2 1.4 0.2 Iris-setosa 49 5.3 3.7 1.5 0.2 Iris-setosa 50 5 3.3 1.4 0.2 Iris-setosa 71 5.9 3.2 4.8 1.8 Iris-versicolor 72 6.1 2.8 4 1.3 Iris-versicolor 73 6.3 2.5 4.9 1.5 Iris-versicolor 74 6.1 2.8 4.7 1.2 Iris-versicolor 75 6.4 2.9 4.3 1.3 Iris-versicolor 76 6.6 3 4.4 1.4 Iris-versicolor 77 6.8 2.8 4.8 1.4 Iris-versicolor 78 6.7 3 5 1.7 Iris-versicolor 79 6 2.9 4.5 1.5 Iris-versicolor 80 5.7 2.6 3.5 1 Iris-versicolor 81 5.5 2.4 3.8 1.1 Iris-versicolor 82 5.5 2.4 3.7 1 Iris-versicolor 83 5.8 2.7 3.9 1.2 Iris-versicolor 84 6 2.7 5.1 1.6 Iris-versicolor 85 5.4 3 4.5 1.5 Iris-versicolor 86 6 3.4 4.5 1.6 Iris-versicolor 87 6.7 3.1 4.7 1.5 Iris-versicolor 88 6.3 2.3 4.4 1.3 Iris-versicolor 89 5.6 3 4.1 1.3 Iris-versicolor 90 5.5 2.5 4 1.3 Iris-versicolor 91 5.5 2.6 4.4 1.2 Iris-versicolor 92 6.1 3 4.6 1.4 Iris-versicolor 93 5.8 2.6 4 1.2 Iris-versicolor 94 5 2.3 3.3 1 Iris-versicolor 95 5.6 2.7 4.2 1.3 Iris-versicolor 96 5.7 3 4.2 1.2 Iris-versicolor 97 5.7 2.9 4.2 1.3 Iris-versicolor 98 6.2 2.9 4.3 1.3 Iris-versicolor 99 5.1 2.5 3 1.1 Iris-versicolor 100 5.7 2.8 4.1 1.3 Iris-versicolor 121 6.9 3.2 5.7 2.3 Iris-virginica 122 5.6 2.8 4.9 2 Iris-virginica 123 7.7 2.8 6.7 2 Iris-virginica 124 6.3 2.7 4.9 1.8 Iris-virginica 125 6.7 3.3 5.7 2.1 Iris-virginica 126 7.2 3.2 6 1.8 Iris-virginica 127 6.2 2.8 4.8 1.8 Iris-virginica 128 6.1 3 4.9 1.8 Iris-virginica 129 6.4 2.8 5.6 2.1 Iris-virginica 130 7.2 3 5.8 1.6 Iris-virginica 131 7.4 2.8 6.1 1.9 Iris-virginica 132 7.9 3.8 6.4 2 Iris-virginica 133 6.4 2.8 5.6 2.2 Iris-virginica 134 6.3 2.8 5.1 1.5 Iris-virginica 135 6.1 2.6 5.6 1.4 Iris-virginica 136 7.7 3 6.1 2.3 Iris-virginica 137 6.3 3.4 5.6 2.4 Iris-virginica 138 6.4 3.1 5.5 1.8 Iris-virginica 139 6 3 4.8 1.8 Iris-virginica 140 6.9 3.1 5.4 2.1 Iris-virginica 141 6.7 3.1 5.6 2.4 Iris-virginica 142 6.9 3.1 5.1 2.3 Iris-virginica 143 5.8 2.7 5.1 1.9 Iris-virginica 144 6.8 3.2 5.9 2.3 Iris-virginica 145 6.7 3.3 5.7 2.5 Iris-virginica 146 6.7 3 5.2 2.3 Iris-virginica 147 6.3 2.5 5 1.9 Iris-virginica 148 6.5 3 5.2 2 Iris-virginica 149 6.2 3.4 5.4 2.3 Iris-virginica 150 5.9 3 5.1 1.8 Iris-virginica
Iris_test.csv 数据:
Id SepalLengthCm SepalWidthCm PetalLengthCm PetalWidthCm Species 1 5.1 3.5 1.4 0.2 tf_read 2 4.9 3 1.4 0.2 Iris-setosa 3 4.7 3.2 1.3 0.2 Iris-setosa 4 4.6 3.1 1.5 0.2 Iris-setosa 5 5 3.6 1.4 0.2 Iris-setosa 6 5.4 3.9 1.7 0.4 Iris-setosa 7 4.6 3.4 1.4 0.3 Iris-setosa 8 5 3.4 1.5 0.2 Iris-setosa 9 4.4 2.9 1.4 0.2 Iris-setosa 10 4.9 3.1 1.5 0.1 Iris-setosa 11 5.4 3.7 1.5 0.2 Iris-setosa 12 4.8 3.4 1.6 0.2 Iris-setosa 13 4.8 3 1.4 0.1 Iris-setosa 14 4.3 3 1.1 0.1 Iris-setosa 15 5.8 4 1.2 0.2 Iris-setosa 16 5.7 4.4 1.5 0.4 Iris-setosa 17 5.4 3.9 1.3 0.4 Iris-setosa 18 5.1 3.5 1.4 0.3 Iris-setosa 19 5.7 3.8 1.7 0.3 Iris-setosa 20 5.1 3.8 1.5 0.3 Iris-setosa 51 7 3.2 4.7 1.4 Iris-versicolor 52 6.4 3.2 4.5 1.5 Iris-versicolor 53 6.9 3.1 4.9 1.5 Iris-versicolor 54 5.5 2.3 4 1.3 Iris-versicolor 55 6.5 2.8 4.6 1.5 Iris-versicolor 56 5.7 2.8 4.5 1.3 Iris-versicolor 57 6.3 3.3 4.7 1.6 Iris-versicolor 58 4.9 2.4 3.3 1 Iris-versicolor 59 6.6 2.9 4.6 1.3 Iris-versicolor 60 5.2 2.7 3.9 1.4 Iris-versicolor 61 5 2 3.5 1 Iris-versicolor 62 5.9 3 4.2 1.5 Iris-versicolor 63 6 2.2 4 1 Iris-versicolor 64 6.1 2.9 4.7 1.4 Iris-versicolor 65 5.6 2.9 3.6 1.3 Iris-versicolor 66 6.7 3.1 4.4 1.4 Iris-versicolor 67 5.6 3 4.5 1.5 Iris-versicolor 68 5.8 2.7 4.1 1 Iris-versicolor 69 6.2 2.2 4.5 1.5 Iris-versicolor 70 5.6 2.5 3.9 1.1 Iris-versicolor 101 6.3 3.3 6 2.5 Iris-virginica 102 5.8 2.7 5.1 1.9 Iris-virginica 103 7.1 3 5.9 2.1 Iris-virginica 104 6.3 2.9 5.6 1.8 Iris-virginica 105 6.5 3 5.8 2.2 Iris-virginica 106 7.6 3 6.6 2.1 Iris-virginica 107 4.9 2.5 4.5 1.7 Iris-virginica 108 7.3 2.9 6.3 1.8 Iris-virginica 109 6.7 2.5 5.8 1.8 Iris-virginica 110 7.2 3.6 6.1 2.5 Iris-virginica 111 6.5 3.2 5.1 2 Iris-virginica 112 6.4 2.7 5.3 1.9 Iris-virginica 113 6.8 3 5.5 2.1 Iris-virginica 114 5.7 2.5 5 2 Iris-virginica 115 5.8 2.8 5.1 2.4 Iris-virginica 116 6.4 3.2 5.3 2.3 Iris-virginica 117 6.5 3 5.5 1.8 Iris-virginica 118 7.7 3.8 6.7 2.2 Iris-virginica 119 7.7 2.6 6.9 2.3 Iris-virginica 120 6 2.2 5 1.5 Iris-virginica
以上这篇TensorFlow 读取CSV数据的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
赞 (0)