如何在python中过滤数据

时间:2015-02-24 12:39:03

标签: python pandas

我的数据集如d1

import pandas as pd
d1 = {
'customers': pd.Series([1, 1, 1, 2, 2, 3, 3, 4, 4]),
'channel': pd.Series(['a', 'a', 'b', 'c', 'a', 'a', 'b', 'b', 'c']),
'freq': pd.Series([3, 3, 3, 2, 2, 2, 2, 2, 2])
}
d1=pd.DataFrame(d1)

我想获得仅使用两个不同频道和频道的客户列表' a'是强制性的。

对于前..第一位客户使用了两个截然不同的渠道' a'& ' B'
第二位客户使用过' a' &安培; ' C'第三位客户使用了' a' &安培; ' B&#39 ;.但是客户4没有使用频道' a'等等....

1 个答案:

答案 0 :(得分:0)

这是你想要的吗?

d1[d1.customers.isin(d1[(d1.freq==2) & (d1.channel=="a")].customers)]

  channel  customers  freq
3       c          2     2
4       a          2     2
5       a          3     2
6       b          3     2

HTH