我有一个df,其中包含没有主键的客户数据。同一位客户可能会多次出现。
我有一个字段(df2 ['campaign']),它是一个整数,反映了客户在df中出现的次数。还有许多客户属性。
在我的示例中,从上到下,对于每一行(即客户),我想查找其教育和默认列的值相同的所有n行(即所有n位客户)。请记住,n是df2 ['campaign']
中包含的int因此,如下所示,对于第0行和第1行,我应该搜索1行,但什么也没找到,因为对于教育默认组合没有匹配的值。 对于第2行,我应该搜索教育默认值匹配的1行(因为campaign == 1),并在索引4中找到1行。
df2.head()
job marital education default campaign housing loan contact
0 3 1 0 0 1 0 0 1
1 7 1 3 1 1 0 0 1
2 7 1 3 0 1 2 0 1
3 0 1 1 0 1 0 0 1
4 7 1 3 0 1 0 2 1
答案 0 :(得分:0)
使用df2_sorted = df2.sort(['education', 'default'], ascending=[1, 1])
。
然后,如果您的数据不嘈杂,则这些行应成为邻居。