Tensorflow tf.data.Dataset 使用 map 函数时出错 |按键错误

Tensorflow tf.data.Dataset error when using map function | KeyError

我正在做我的顶点项目。基本上,我正在尝试为亚马逊美容产品建立一个推荐系统。数据集是 TensorFlow 数据集.

一些工作正常的源代码

 data=tfds.load('amazon_us_reviews/Beauty_v1_00', split='train')

 type: tensorflow.python.data.ops.dataset_ops.PrefetchDataset

错误

I try to select only some of the columns using the map function

       data = data.map(lambda x: {
               "customer_id": x["customer_id"],
               "product_id": x["product_id"],
              "star_rating": x["star_rating"]
              })

KeyError: 在用户代码中:

       KeyError: 'customer_id'

教程中的代码工作正常,但当我尝试这样做时却不起作用。我一直在谷歌搜索,找不到答案。

你有什么建议吗? 从现在开始感谢您的宝贵时间。

您在访问字典时缺少“数据”键。

这应该可以解决问题:

data = data.map(lambda x: {
        "customer_id": x["data"]["customer_id"],
        "product_id": x["data"]["product_id"],
        "star_rating": x["data"]["star_rating"]
       })