【发布时间】:2018-08-11 19:24:48
【问题描述】:
我正在尝试创建一个 TensorFlow 数据集,它接收 CSV 文件的路径名列表并创建批量训练数据。首先,我创建了一个使用 Pandas 读取前 n 行的解析函数。我将此函数作为 Dataset 中“map”方法的参数
def _get_data_for_dataset(file_name,rows=100):
print(file_name.decode())
df_input=pd.read_csv(os.path.join(folder_name, file_name.decode()),
usecols =['Wind_MWh','Actual_Load_MWh'],nrows = rows)
X_data = df_input.as_matrix()
X_data.astype('float32', copy=False)
return X_data
dataset = tf.data.Dataset.from_tensor_slices(file_names)
dataset = dataset2.map(lambda file_name: tf.py_func(_get_data_for_dataset,[file_name,100], tf.float64))
dataset= dataset.batch(2) #Create batches
iter = dataset.make_one_shot_iterator()
get_batch = iter.get_next()
with tf.Session() as sess:
print(sess.run(get_batch).shape)
上面的代码可以工作,但不是生成形状为 (200,2) 的数据集,而是生成形状为 (2, 100, 2) 的数据集。请帮忙。
【问题讨论】:
标签: pandas tensorflow tensorflow-datasets