【发布时间】:2021-02-05 17:00:46
【问题描述】:
对于一个小数据集,我在整个数据集的数据帧上使用 scikit-learn test_train_split
from sklearn.model_selection import train_test_split
train, test = train_test_split(features_dataframe, test_size=0.2)
train, test = train_test_split(train, test_size=0.2)
train, val = train_test_split(train, test_size=0.2)
它只是在我的数据集上创建一个测试、训练、验证拆分。
现在,我想从磁盘执行数据加载,即我的 csv 文件。所以,我正在使用实验性的 tf.data 函数make_csv_dataset。我所做的是
import tensorflow as tf
defaults=[float()]*len(selected_columns)
data_set=tf.data.experimental.make_csv_dataset(
file_pattern = "./processed/*/*/*.csv",
column_names=all_columns, # array with all columns labels
select_columns=selected_columns, # array with desired column labels
column_defaults=defaults, # default column values
label_name="Target",
batch_size=10,
num_epochs=1,
num_parallel_reads=20,
shuffle_buffer_size=10000,
ignore_errors=True)
据我猜测,我有数据集,但是当我尝试执行 scikit-learn 的train_test_split 时,它不起作用,原因很明显,data_set 尚未加载,它刚刚配置正在加载。
如何对这些数据执行训练、测试、验证拆分?
我浏览了一些指南,每个人(据我所知)都在加载训练数据:
【问题讨论】:
-
但是我现在没有数据框,是数据集
-
this 对您有帮助吗?
-
@TFer2 检查我的答案,看看到目前为止什么对我有用
标签: python tensorflow machine-learning scikit-learn