我對 TensorFlow 很陌生。
我有這個資料集,可以在 kaggle 上找到。我只想讀取目錄2018中可用的raw檔案。我可以通過以下方式使用 tensorflow 列出檔案:
import tensorflow as tf
data_2018 = tf.data.Dataset.list_files("./raw/*2018*")
但是,這不會加載資料。另外我想選擇應該加載的列。例如,我想加載[1, 3, 6, 8, 10]列。如何從多個 CSV 檔案加載資料并選擇列?
uj5u.com熱心網友回復:
嘗試使用tf.data.experimental.make_csv_dataset:
import pandas as pd
import tensorflow as tf
# Create dummy data
df = pd.DataFrame({'name': ['Raphael', 'Donatello'],
'mask': ['red', 'purple'],
'weapon': ['sai', 'bo staff']})
df.to_csv("/content/raw/2_2018_2.csv", index=False)
df.to_csv("/content/raw/2_2018_3.csv", index=False)
加載 csv 檔案并選擇特定列:
dataset = tf.data.experimental.make_csv_dataset(file_pattern = "/content/raw/*2018*", batch_size=2, num_epochs=1, select_columns = ['name', 'mask'])
for x in dataset:
print(x['name'], x['mask'])
tf.Tensor([b'Donatello' b'Raphael'], shape=(2,), dtype=string) tf.Tensor([b'purple' b'red'], shape=(2,), dtype=string)
tf.Tensor([b'Donatello' b'Raphael'], shape=(2,), dtype=string) tf.Tensor([b'purple' b'red'], shape=(2,), dtype=string)
tf.Tensor([b'Raphael' b'Raphael'], shape=(2,), dtype=string) tf.Tensor([b'red' b'red'], shape=(2,), dtype=string)
tf.Tensor([b'Donatello' b'Donatello'], shape=(2,), dtype=string) tf.Tensor([b'purple' b'purple'], shape=(2,), dtype=string)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/518438.html
