按值过滤相同类型的DataFrame

时间:2018-06-08 09:11:16

标签: python python-2.7 pandas

我有DataFrame基本上关联Type1Type2,而df[t1][t2]始终返回State类型的状态。 DataFrame的内容表明我应该使用numpy数组,但我需要能够像字典一样对其进行索引,这就是我使用DataFrame的原因。如果有更好的设计方法,请告诉我。

我正在尝试收集所有type1,type2组合的列表,其df中的值与特定状态匹配。我可以过滤一行:

row = df[type1]
row[row == state]

但是如何过滤整个DataFrame

1 个答案:

答案 0 :(得分:2)

我建议将格式更改为BufferedImage

MultiTndex Series

编辑:

为了获得更好的性能,可以使用numpy.where作为匹配值的索引,然后将np.random.seed(100) df = pd.DataFrame(np.random.randint(10, size=(3,3)), columns=list('ABC')) print (df) A B C 0 8 8 3 1 7 7 0 2 4 2 5 a = df.stack() print (a) 0 A 8 B 8 C 3 1 A 7 B 7 C 0 2 A 4 B 2 C 5 dtype: int32 b = a[a == 8].index.remove_unused_levels().tolist() print (b) [(0, 'A'), (0, 'B')] 索引的索引和列名称用于元组:

zip