我正在寻找Python代码,可以采取表格数据,并确定它在哪里(如果有的话)和显示任何功能依赖关系,等等用于确定哪些正常形式表格数据在Python代码
回答
我认为这段代码真的很难实现。
查看关于数据库规范化算法的this question。
有“标准化”的逻辑测试。但是,它们在编程中并不是小事。它们是强加在数据上的元数据中的关系。他们需要“思考”。
1NF - 无重复组。如何识别“重复组”?这将是一个强加在表的列上的数组结构。这是如何完成的? SQL不提供一种机制,所以你必须查看列名来检查“模式”。例如,COL_1,COL_2,COL_3。
1NF - 行的一致布局。咄。 SQL通过表定义的特性强加了这一点。
2NF - 行中的数据取决于密钥。你必须做一个这样的程序。
For each non-key column:
Query distinct pairs (Key and the non-key column)
Do all non-key values depend in a consistent way on a key value?
Can you build a simple dict mapping non-key to key?
完整的算法是在这里:http://en.wikipedia.org/wiki/Relational_model#Set-theoretic_formulation
3NF - 数据在一排只依赖于关键。这更糟糕,因为您必须将非键列的所有组合与非键列的所有组合进行比较,以确保值之间不存在非键相关性。
4NF和5NF让我迷惑,所以我会在这里停下来。
我的观点是 - 理论上 - 你可以做到。实际上,大量复杂的数据排列声称正常形式的关系实际上持有。
对某个特定的违规行为进行假设并用一些SQL查询和某些想法来探究这个问题要容易得多。
正式的数学是在这里:
我知道正常的形式是什么,我只是想知道在Python中是否有预先存在的代码我写我自己的。 – 2010-01-30 03:24:37
@詹姆斯陶伯:“我知道什么是正常的形式......”并不清楚你的问题。对不起所有的冗余。但是,这个问题似乎并不知情,因为它通常是通过手工分析模式而不是自动磨削数据来完成的。如果您已经知道,那么您意识到对于大型数据集,算法可能难以控制。 – 2010-01-30 13:23:46
而不是Python代码,但是第一眼本文着眼有用。
- 1. 确定哪些函数在代码中
- 2. Python正确的代码格式(PEP8)
- 3. 哪些代码用于表单验证?
- 4. 哪些Python PEP处理代码风格?
- 5. 确定哪些代码行抛出异常
- 6. 确定最高的正常形式
- 7. 使用SQLAlchemy,确定哪些列表值不在数据库列
- 8. 用于代码格式化的正则表达式
- 9. 正确格式化这些表单
- 10. 如何格式化正常jQuery代码可重用的代码
- 11. 确定哪些字典我在Python
- 12. Python源代码:哪些python项目是核心,哪些是库?
- 13. 正确格式化数据
- 14. 如何确定哪些函数调用在Python中引发异常?
- 15. jquery正确的代码格式
- 16. 如何正确格式化此代码?
- 17. 保持代码始终格式正确?
- 18. Wordpress格式代码不正确
- 19. POST代码格式不正确?
- 20. 正确的jquery代码格式
- 21. 的Javascript正则表达式,确定哪些组上匹配
- 22. MongoDB的:确定哪些正在从
- 23. Python 3.5代码 - 类未正确定义
- 24. 在D3中绘制多边形数据的正确格式
- 25. 用于创建来自数据列的图形的Python代码
- 26. 数据库将用于统计/图表/图表。表格正确的方式?
- 27. 确定哪个数据库行导致“输入字符串格式不正确”
- 28. 如何使用ObjectDataSource在代码中将数据表格正确设置为gridview?
- 29. 在Numpy源代码中定义了哪些常量?
- 30. 这是VB.NET代码的正确格式(对于grokkability)吗?
请解释你在问什么。也许包括例子。 – Brian 2010-01-28 20:01:36
我认为他在谈论数据库规范化[http://en.wikipedia.org/wiki/Database_normalization] – 2010-01-28 20:25:28