我正在Python中实现交叉列表库,这是我的新工作的编程练习,并且已经实现了一些有效的要求,但这些要求并不冗长且多余。我想要一个更好的模型,它允许在基础模型之间很好地,干净地移动数据,以表格数据形式存储在平面文件中,以及可能需要的所有统计分析结果。
现在,我有了从表中每一行的一组元组,到计算所关注的元组出现频率的直方图,再到一个序列化器的过程,该序列化器有点笨拙地将输出编译为一组用于显示的表格单元格。但是,由于没有足够的信息,我最终不得不不得不多次回到表格或直方图中。
那么,有什么想法吗?
编辑:这是一些数据的示例,而我希望能够从中构建
它。注意 ”。”表示一些“丢失”数据,这只是有条件的
算了。
1 . 1
1 0 3
1 0 3
1 2 3
2 . 1
2 0 .
2 2 2
2 2 4
2 2 .
如果我正在查看上面第0列和第2列之间的相关性,那么这就是我要使用的表:
. 1 2 3 4
1 0 1 0 3 0
2 2 1 1 0 1
另外,我希望能够计算频率/总和,频率/小计和&c的比率。
最佳答案
您可以将内存中的sqlite
数据库用作数据结构,并将所需的操作定义为SQL查询。
import sqlite3
c = sqlite3.Connection(':memory:')
c.execute('CREATE TABLE data (a, b, c)')
c.executemany('INSERT INTO data VALUES (?, ?, ?)', [
(1, None, 1),
(1, 0, 3),
(1, 0, 3),
(1, 2, 3),
(2, None, 1),
(2, 0, None),
(2, 2, 2),
(2, 2, 4),
(2, 2, None),
])
# queries
# ...
关于python - 什么是交叉表的良好数据模型?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1019643/