如何根据相同的值对数组进行分组

2024-10-03 17:17:03 发布

您现在位置:Python中文网/ 问答频道 /正文

请与python中的数组混淆。我想根据相同的值对数组进行分组。在

代码:

enter image description here

id_disease = ['penyakit_tepung','hawar_daun']
for id_disease in id_disease:
    qres = acacia.query( 
        """
        PREFIX tst: <http://www.semanticweb.org/aalviian/ontologies/2017/1/untitled-ontology-10#>
        SELECT ?disease ?patogen
        WHERE { 
            ?disease tst:caused_by ?patogen . 
            FILTER regex(str(?disease), "%s") .
        } """ % id_disease )

    for row in qres:
        for r in row:
            print(r.replace('http://www.semanticweb.org/aalviian/ontologies/2017/1/untitled-ontology-10#',''))
        print("\n")

输出:

^{pr2}$

预期的数组:

[['spaeerotheca_sp','oidium_sp','erysiphe_sp'].['cylindrocladium_sp','kirramyces_sp','phaeophleopspora_sp']]

如果你知道怎么做的话,请帮帮我。在


Tags: inorgidhttpforwww数组sp
2条回答

我采用的一般方法是创建一个字典,将每个键映射到一个列表。在

假设您的输入列表如下所示:

[
 ['a', 'A'], ['a', 'B'], 
 ['b', 'D'], ['b', 'E'],
 ['a', 'C']
]

我要做的是:

^{pr2}$

现在我们应该有一张这样的地图:

{'a': ['A', 'B', 'C'], 'b': ['D', 'E']}

应该是的

listoflists = []

for row in qres:
    a_list = []

        for r in row:
           data = r.replace('http://www.semanticweb.org/aalviian/ontologies/2017/1/untitled-ontology-10#','')
           a_list.append(data)

    listoflists.append(a_list)

print listoflists

相关问题 更多 >