我有一个 bool 值的二维列表,它表示 Python 中有向图的邻接矩阵。我正在尝试将此矩阵写入文件,但矩阵本身非常大,因此我试图在将其写入文件之前想出某种对其进行编码的方法。
我想我可以将每一列视为二进制数 - 因此我可以将其转换为十进制数并将其写入文件。不过,首先,我会写入节点数以确保每个编码都是唯一的。
例如,如果矩阵是[[False, True], [True, True]]
,我的文件将如下所示:
2 (number of nodes)
1 (01 as decimal)
3 (11 as decimal)
当然,没有括号内的文本。
我的问题是:是否有另一种更节省空间(例如,生成的文件会更小)的方式来编码该矩阵?
最佳答案
您的数据需要有一些模式才能更好地压缩它。 更多模式=更多压缩。您根据模式组成数据。
如果您有随机数据集矩阵,可以使用rank方法对其进行压缩。 好好看看this answer
很好Paper就主题而言
关于python - 用Python编码有向图的 bool 邻接矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12231808/