我有一个像这样构造的 Pandas 系列
import itertools
import pandas as pd
combos = list(itertools.permutations(['BB', 'BW', 'WW'], 2))
combo_values = pd.Series([2,4,0,2,0,0], combos)
所以combo_values看起来像这样
(BB, BW) 2
(BB, WW) 4
(BW, BB) 0
(BW, WW) 2
(WW, BB) 0
(WW, BW) 0
dtype: int64
我知道你可以像这样提取一个条目
combo_values['BB', 'BW']
所以我想提取前两个条目我想做这样的事情:
combo_values['BB',]
#or this
combo_values['BB',:]
两者都不起作用,第一个选项会产生以下错误(我正在删除痕迹)
TypeError: 'tuple' object cannot be interpreted as an integer
KeyError: ('BB',)
我知道这个替代解决方案有效:
combo_df = pd.DataFrame(combos, columns = ['A', 'B'])
combo_df['combo_values'] = [2,4,0,2,0,0]
combo_df.loc[combo_df['A'] == 'BB', :]
但是有没有办法用我的combo_values系列来做到这一点?
慕码人2483693
相关分类