在熊猫数据框中选择其嵌套列表值与给定值匹配的列

时间:2018-10-11 17:48:30

标签: python pandas

我有一个像这样的数据框:

>>> MCQ_DATA['q45']
10    [13, 14]
11    [13, 14]
12    [13, 12]
13    [13, 12]
14     [9, 12]
15      [2, 6]
16         [2]
17        [16]
18    [13, 12]
19    [13, 11]

因此,列“ q45”的所有值都是列表。我想为包含13的行创建一个布尔过滤器,例如:

>>> [MCQ_DATA['q45'] == 13]
10    True
11    True
12    True
13    True
14    False
15    False
16    False
17    False
18    True
19    True

已经尝试过这些:

我一直在寻找半小时的必备条件,如果最后一种方法不是正确的方法,那么正确的方法是什么?

进一步测试发现这也有效。我会说这是最好的方法。使用熊猫框架,易于阅读:

  • df['q45'].dropna().apply({13}.issubset)-我想如果大规模地这样做会更快,但是也许有人知道。 (我需要.dropna(),因为nan给出了错误。)

0 个答案:

没有答案