



1. 对于每部获得多个奖项的电影,列出其相关的奖项和年份。



2. 纠正这些错误。

有人可能会同时处理这两项,但在我们的实验中,事先在数据表中正确转换每列的值是至关重要的准备步骤。通过将整个过程分解为一系列连续的操作,可以简化数据清理工作,从而提高性能、理解力和可维护性。当然,这种策略有些主观,但它倾向于尽可能避免一次性处理所有数据质量问题。

有多种方法可以执行此分类,包括确定性方法。这里选择的方法利用大型语言模型 (LLM),并提供有关每一列和整个数据框上下文的信息来指导其决策:
描述:表示与每条记录相关的日期和时间信息。
建议的数据类型:datetime
2.列名:category
描述:包含定义项目类型或分类的分类标签。
建议的数据类型:string
3.列名:price
描述:保存以货币表示的项目数值价格。
建议的数据类型:float
4.列名:image _url
描述:存储指向项目图像的网址 (URL)。
建议的数据类型:string
5. 列名:rating
描述:使用数值分数表示对项目的评估或评级。
建议的数据类型:int
所有不可转换的值都留待进一步研究。
有时,更正方法很简单——例如,将年龄值 20 转换为整数 20。在许多其他情况下,替代方案并不那么明显,使用标记(占位符)值标记该值是更好的选择。例如,在 Pandas 中,特殊对象 pd.NA 就适用于这种情况。
"violations": [
{
"index": 2,
"column_name": "rating",
"value": "4 stars",
"violation": "Contains non-numeric text in a numeric rating field.",
"substitute": "4"
},
{
"index": 1,
"column_name": "price",
"value": "twenty",
"violation": "Textual representation that cannot be directly converted to a number.",
"substitute": "20"
},
{
"index": 4,
"column_name": "price",
"value": "20€",
"violation": "Price value contains an extraneous currency symbol.",
"substitute": "20"
}
]
}
• 期望:值必须是有效的日期时间。
-原因:该列表示日期和时间信息,因此每个条目应遵循标准日期时间格式(例如,ISO 8601)。
• 期望:日期时间值应包含时区信息(最好是 UTC)。
-原因:提供的示例时间戳包含明确的 UTC 时区信息。这可确保基于时间的分析的一致性。
────────────────────────────────
列名:category
• 期望:允许的值应标准化为预定义集合。
-原因:根据语义,有效类别可能包括“书籍”、“电子产品”、“食品”、“服装”和“家具”。 (注意:示例中包含“Fod”,可能需要更正为“Food”。)
• 期望:条目应遵循标准化的文本格式(例如,标题大小写)。
-原因:一致的大写和拼写将改进下游分析并减少数据清理问题。
──────────────────────────────
列名:price
• 期望:值必须是浮点数。
-原因:由于此列存储的是金额,因此为了计算准确,条目应存储为数值(浮点数)。
• 期望:价格值应在有效的非负数字区间内(例如,price ≥ 0)。
-原因:在定价环境中,负价通常没有意义。即使样本中观察到的最小值是 9.99,对于定价数据来说,允许零或正值也更为现实。
────────────────────────────────
列名:image _url
• 期望:值必须是具有预期格式的有效 URL。
– 原因:由于此列存储的是图片网址,因此每个 URL 都应遵循标准 URL 格式模式(例如,包括正确的协议模式)。
• 期望:URL 应以“https://”开头。
– 原因:示例显示一个 URL 使用“htp://”,这可能是拼写错误。强制执行安全 (https) URL 标准可提高数据可靠性和用户安全性。
•期望:评级值应在有效区间内,例如 1 到 5 之间。
生成验证代码
为了简化调试,验证代码应逐元素应用检查,以便在发生故障时能够清楚地识别行索引和列名。这有助于有效地查明和解决问题。
"violations": [
{
"index": 3,
"column_name": "category",
"value": "Fod",
"violation": "category should be one of ['Books', 'Electronics', 'Food', 'Clothing', 'Furniture']",
"substitute": "Food"
},
{
"index": 0,
"column_name": "image_url",
"value": "htp://imageexample.com/pic.jpg",
"violation": "image_url should start with 'https://'",
"substitute": "https://imageexample.com/pic.jpg"
},
{
"index": 3,
"column_name": "rating",
"value": "10",
"violation": "rating should be between 1 and 5",
"substitute": "5"
}
]
}


