Pandas数据帧到字典的多个键

2024-07-04 13:16:08 发布

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

我目前使用的是一个由13个字母组成的列(“13mer”)与ID代码(“accessition”)组成的数据帧:

Original Data Frame

但是,我想创建一个字典,其中加入代码是关键字,其值是与加入相关的13mers,因此它看起来如下:

{'JO2176': ['IGY....', 'QLG...', 'ESS...', ...],
 'CYO21709': ['IGY...', 'TVL...',.............],
 ...}

我用这个代码完成了:

^{pr2}$

但是,现在我想返回并迭代每个加入代码的键,运行一个我定义为find_match_position(reference_sequence,13mer)的函数,它在引用序列中查找13mer并返回其位置。然后我想把这个位置作为13mer的一个值,它将是键。在

如果有人对我如何加快这个过程有任何想法,那将是非常有帮助的。在

谢谢

贾斯汀


Tags: 数据代码id字典定义字母关键字ess
2条回答

我建议创建一个新字典,它的值是另一个字典。本质上是一个嵌套字典。在

position_nmers = {}
for key in H1_Access_13mers:
    position_nmers[key] = {} # replicate key, val in new dictionary, as a dictionary
    for value in H1_Access_13mers[key]:
        position_nmers[key][value] = # do something

要反省字典并确保它没问题:

^{pr2}$

通过解压缩,可以更清晰地遍历groupby:

d = {}
for key, s in df.groupby('Accession')['13mer']:
    d[key] = list(s)

这也使得你应该把你的函数放在哪里更清楚!在

。。。但是,我认为它可能更适合枚举:

^{pr2}$

相关问题 更多 >

    热门问题