使用make_csv_dataset,我们可以将CSV文件读取到tensorflow数据集对象

csv_data = tf.data.experimental.make_csv_dataset(
    "./train.csv",
    batch_size=8190,
    num_epochs=1,
    ignore_errors=True,)

现在csv_datatensorflow.python.data.ops.dataset_ops.MapDataset型.我怎样才能找到csv_data的大小或形状.

print(csv_data)给出如下列信息

<MapDataset element_spec={'title': TensorSpec(shape=(None,), dtype=tf.string, name=None), 'user_id': TensorSpec(shape=(None,), dtype=tf.string, name=None)}>

当然,可以 Select 使用train_recom.csvpandas.read_csv,只是好奇tensorflow是否有更简单的方法.

推荐答案

如果希望在没有任何预处理步骤的情况下获得批处理数据集的大小,请try :

import pandas as pd
import tensorflow as tf

df = pd.DataFrame(data={'A': [50.1, 1.23, 4.5, 4.3, 3.2], 'B':[50.1, 1.23, 4.5, 4.3, 3.2], 'C':[5.2, 3.1, 2.2, 1., 3.]})

df.to_csv('data1.csv', index=False)
df.to_csv('data2.csv', index=False)

dataset = tf.data.experimental.make_csv_dataset(
    "/content/*.csv",
    batch_size=2,
    field_delim=",",
    num_epochs=1,
    select_columns=['A', 'B', 'C'],
    label_name='C')

dataset_len = len(list(dataset.map(lambda x, y: (x, y))))
print(dataset_len)
5

如果您想知道总共有多少样品,请try unbatch:

dataset_len = len(list(dataset.unbatch().map(lambda x, y: (x, y))))
print(dataset_len)
# 10

Python-3.x相关问答推荐

这是重命名极地df列的最好方式吗?

Python避免捕获特定异常

是什么原因导致Pandas=2.1.4和Pandas=1.4.2之间Pandas DataFrame中从Float64到int32的连续列转换方式不同

我想判断df_entry_log[AM_PM],并根据测试填充列

为什么我的Selenium脚本在密码元素上失败?

十进制浮点数到整型的转换错误

将列表转换为 pandas 数据框,其中列表包含字典

为什么 tkinter 在 tkinter 窗口外计算鼠标事件?

Python 舍入数字不准确

我应该如何调整我的变量,以便如果有任何单词符合其中的条件,程序会将其附加到新列表中?

缺失时推断的数据类可选字段

Python ** 用于负数

使用正则表达式提取字符串之间的文本

为什么我不能通过索引获取字典键?

用于 Django 应用程序的 Cython:它会工作吗?

如何在 Selenium 和 Python 中使用类型查找元素

matplotlib - 模块sip没有属性setapi

如何强制 Sphinx 使用 Python 3.x 解释器

如何使用 python http.server 运行 CGI hello world

Beautifulsoup 的单元测试失败