我正在使用 AWS Personalize 构建推荐系统。用户个性化配方有 3 个数据集输入:交互、user_metadata 和 item_metadata。我无法导入包含boolean
字段的用户元数据。我创建了以下架构:
user_schema = {
"type": "record",
"name": "Users",
"namespace": "com.amazonaws.personalize.schema",
"fields": [
{
"name": "USER_ID",
"type": "string"
},
{
"name": "type",
"type": [
"null",
"string"
],
"categorical": True
},
{
"name": "lang",
"type": [
"null",
"string"
],
"categorical": True
},
{
"name": "is_active",
"type": "boolean"
}
],
"version": "1.0"
}
数据集 csv 文件内容如下所示:
USER_ID,type,lang,is_active
1234@gmail.com ,,geo,True
01027061015@mail.ru ,facebook,eng,True
03dadahda@gmail.com ,facebook,geo,True
040168fadw@gmail.com ,facebook,geo,False
我在 s3 存储桶上上传了给定的 csv 文件。当我尝试创建数据集导入作业时,它给了我以下异常:
InvalidInputException: An error occurred (InvalidInputException) when calling the CreateDatasetImportJob operation: Input csv has rows that do not conform to the dataset schema. Please ensure all required data fields are present and that they are of the type specified in the schema.
我测试过,它可以在没有boolean
field的情况下工作is_active
。给定列中没有 NaN 值!
如果能够直接测试您的 pandas 数据框或 csv 文件是否符合给定的架构并可能获得更详细的错误消息,那就太好了。
有人知道如何格式化布尔字段来解决这个问题吗?