我有一个pandas数据框df
,我使用df.groupby('something').groups
来获取带有布局{group:每个组的索引列表}的dict。
maxProteinPeptidesDict = defaultdict(list, df.loc[peptideIndices].groupby("Master Protein Accessions").groups)
(...)
for multipleProteinsString, nonUniqueIndices in multipleProteinPeptidesDict.items():
multipleProteins = multipleProteinsString.split('; ')
for protein in multipleProteins: # extend the possibly (probably) already existing entry in the dict.
maxProteinPeptidesDict[protein].extend(nonUniqueIndices)
但是,dict值(maxProteinPeptidesDict[protein]
)中的列表是Int64Index类型。然后我想扩展它们,但Int64Index没有扩展方法。
我怎么能绕过这个呢?将每个Int64Index强制转换为列表唯一选项吗?
BTW1:我使用的是defaultdict,因为技术原因我在开始添加(更多)值之前无法知道条目maxProteinPeptidesDict[protein]
是否已经存在。
BTW2:groupby对象还有一个属性' indices'但这似乎返回了与数据框中的实际索引不同的东西......