我从大量数据中创建了一个默认字典,其中的值作为列表,如下所示。默认字典值在默认字典中表示为列表。你知道吗
default_dict = {('text2015', 'webnet'): [52384, 22276, 97376, 93696, 12672], ('datascience', 'bigdata', 'links'): [18720], ('biological', 'biomedics', 'datamining', 'datamodel', 'semantics'): [82465, 43424], ('links', 'scientometrics'): [23297, 73120]}
我还有另一个数据字典,它将默认字典中的各个列表值作为键。数据字典中的顺序是(key\u ID:[text\u values],total,guser\u ID)。数据字典的形式如下:
data_dictionary = {52384: (['text2015', 'webnet'], 1444856137000, 335829830), 18720: (['datascience', 'bigdata', 'links'], 1444859841000, 17987803), 82465: (['biological', 'biomedics', 'datamining', 'datamodel', 'semantics'], 1444856, 335829830), 73120: (['links', 'scientometrics'], 144481000, 17987803), 22276: (['text2015', 'webnet'], 1674856137000, 615387550), 97376: (['text2015', 'webnet'], 1812856137000, 371559830), 43424: (['biological', 'biomedics', 'datamining', 'datamodel', 'semantics'], 5183856, 363549260), 23297: (['links', 'scientometrics'], 1614481000, 26253825)}
值列表中的第二个选项(sum)是我希望用来比较不同键的数字。这是一个总数。我想在CSV文件中首先显示总和最小的key\u ID,然后显示总和较大的ID,以此类推,如下所示。大写:
(key_ID(最小和);key_ID;sum for(最小和)key_ID;sum for other key_ID;共享文本)
> 52384 ; 22276 ; 1444856137000 ; 1674856137000 ; ['text2015', 'webnet']
> 52384 ; 97376 ; 1444856137000 ; 1812856137000 ; ['text2015', 'webnet']
> 18720 ; 18720 ; 1444859841000 ; 1444859841000 ; ['datascience','bigdata', 'links']
> 82465 ; 43424 ; 1444856 ; 5183856 ;['biological', 'biomedics', 'datamining', 'datamodel', 'semantics']
> 73120 ; 23297 ; 144481000 ; 1614481000 ; ['links', 'scientometrics']
到目前为止,我试图使用字典来构建值,并使用pandas打印为csv,但没有太大成功。任何想法都会很有帮助。此代码为每个文本提供共享该文本的密钥标识的单独csv文件。你知道吗
for key, value in default_dict.items():
df = pd.DataFrame(value)
df.to_csv('graph' + '_'.join(key) + '.csv', index=False)
以下代码执行以下操作:
或者,您可以将其导入到数据帧中,以让Pandas处理保存为CSV的操作。我希望这有帮助。你知道吗
相关问题 更多 >
编程相关推荐