我想寫一個csv文件(所有列都是浮動)到tfrecords文件,然後再讀出它們。我看到的所有示例都包裝了csv列,然後直接將其提供給sess.run(),但我無法弄清楚如何將特徵列和標籤列寫入tfrecord。我怎麼能這樣做?Tensorflow從csv創建一個tfrecords文件
5
A
回答
13
您將需要一個單獨的腳本來將您的csv文件轉換爲TFRecords。
想象一下,你有下面的頭一個CSV:
feature_1, feature_2, ..., feature_n, label
你需要的東西,如pandas
讀您的CSV,手動構建tf.train.Example
然後把它寫入與TFRecordWriter
csv = pandas.read_csv("your.csv").values
with tf.python_io.TFRecordWriter("csv.tfrecords") as writer:
for row in csv:
features, label = row[:-1], row[-1]
example = tf.train.Example()
example.features.feature["features"].float_list.value.extend(features)
example.features.feature["label"].int64_list.value.append(label)
writer.write(example.SerializeToString())
-1
def convert_to():
filename = os.path.join(wdir, 'ml-100k' + '.tfrecords')
print('Writing', filename)
with tf.python_io.TFRecordWriter(filename) as writer:
with open("/Users/shishir/Documents/botconnect_Playground/tfRecords/ml-100k.train.rating", "r") as f:
line = f.readline()
while line != None and line != "":
arr = line.split("\t")
u, i, l = int(arr[0]), int(arr[1]), int(arr[2])
u_arr = np.reshape(u,[1]).astype('int64')
i_arr = np.reshape(i,[1]).astype('int64')
l_arr = np.reshape(l,[1]).astype('int64')
example = tf.train.Example()
example.features.feature["user"].int64_list.value.extend(u_arr)
example.features.feature["item"].int64_list.value.extend(i_arr)
example.features.feature["label"].int64_list.value.append(int(l_arr))
writer.write(example.SerializeToString())
line = f.readline()
到文件
這就是我的解決方案,它的工作原理!希望這可以幫助
乾杯。
+0
感謝您使用此代碼段,這可能會提供一些有限的短期幫助。通過展示*爲什麼*這是一個很好的解決方案,並且使它對未來的讀者更有用,一個正確的解釋[將大大提高](// meta.stackexchange.com/q/114762)其長期價值其他類似的問題。請[編輯]你的答案以添加一些解釋,包括你所做的假設。 –
相關問題
- 1. 創建一個CSV文件
- 2. 從另一個csv文件中創建一個新的csv文件
- 3. 創建一個從CSV
- 4. 從1 CSV創建單個文件
- 5. 如何從python的csv文件創建一個mdb文件?
- 6. 從一個類似CSV的文件創建一個哈希
- 7. 從文本文件創建CSV文件
- 8. 用PHP創建一個CSV文件
- 9. 創建一個大的CSV文件
- 10. 如何從一組.csv工作表創建一個.gexf文件?
- 11. 如何從多個列表中創建一個CSV文件?
- 12. 從多個字典創建一個csv文件?
- 13. Tensorflow數據集API讀取CSV轉換tfrecords
- 14. Tensorflow tfrecords讀取錯誤(CSV轉換後的數據)
- 15. 如何創建一個文件夾來進一步創建.csv文件?
- 16. 如何從本地csv文件創建一個python數據集?
- 17. 從一個csv文件在Neo4j中創建關係
- 18. 使用python從主csv文件創建許多csv文件
- 19. 從多個文件構建csv文件
- 20. Export-csv創建一個空的csv文件
- 21. 從一個CSV文件添加列到另一個CSV文件
- 22. 創建從.csv文件numpy的陣列
- 23. 自動從C創建CSV ++文件
- 24. 從文件中創建CSV的腳本
- 25. 從CSV文件創建矩陣
- 26. 從CSV文件創建數據表
- 27. 從進度數據創建CSV文件
- 28. 從csv文件創建字典
- 29. 從CSV文件創建Spark數據集
- 30. Python/Pandas從csv創建zip文件
我的文章是否回答你的問題? – standy
是的,抱歉花了這麼長時間我最近很忙。謝謝您的幫助! – Nitro