Python 将嵌套字典列表转换为(共现)矩阵形式,并将其保存为.mat文件类型

Python 将嵌套字典列表转换为(共现)矩阵形式,并将其保存为.mat文件类型,python,dictionary,matrix,mat-file,Python,Dictionary,Matrix,Mat File,因此,我创建了一个python脚本,从给定的查询日志数据中,我将其转换为嵌套字典列表,并将其写入新的文本文件 这是我的脚本的示例输出: [{'ip_address': '10.10.80.209', 'domain_names': {'google.com': 2}}, {'ip_address': '10.10.25.188', 'domain_names': {'fbcdn-profile-a.akamaihd.net': 1}}, {'ip_address': '10.10.50.195'

因此,我创建了一个python脚本,从给定的查询日志数据中,我将其转换为嵌套字典列表,并将其写入新的文本文件

这是我的脚本的示例输出:

[{'ip_address': '10.10.80.209', 'domain_names': {'google.com': 2}},
{'ip_address': '10.10.25.188', 'domain_names': {'fbcdn-profile-a.akamaihd.net': 1}},
{'ip_address': '10.10.50.195', 'domain_names': {'googleads.g.doubleclick.net': 2, '0-edge-chat.facebook.com': 2, 'gg.google.com': 2, 'content.googleapis.com': 1, 'accounts.google.com': 1}}]
如您所见,我有一个用户事务列表,其中包含两个条目:键值对ip_地址和域名字典,而域名字典又包含一个域名字典及其访问计数,例如“google.com”:2

不知何故,我需要将这个文件转换成一个共现矩阵,从中可以看到:其中t是用户事务,d是域名,值是访问计数 如您所见,如果用户没有访问某个域名,则访问次数=0

我创建的数据已经接近这个概念,问题是我必须将其转换为矩阵。因此,对于用户事务中每个不存在的访问域名,值必须为0,但我的嵌套字典列表仅提供访问值并将其保存为.mat文件类型

它必须是.mat文件,因为用于聚集此数据的脚本需要.mat文件类型。据我所知,.mat是MATLAB的一种文件类型,我对该语言没有任何先验知识


那么我该怎么做呢?

对于您展示的示例,请同时展示您想要将其转换为什么,对于第二部分,您必须自己调查,尝试使用一些库来编写.mat文件,尝试自己编写转换代码,如果您在转换过程中遇到任何特定的代码问题,您应该带着问题回到这里。所以这也意味着,删除问题的第二部分,如果您自己不管理它,那么以后再将其设置为新的部分。在其他问题中,已经多次提到用python编写mat文件。您可以使用scipy.io.savemat编写旧格式,也可以使用任何HDF5库编写gzip压缩的HDF5文件,HDF5文件可以称之为.mat