我有一个看起来像这样的数据帧:foo = pd.DataFrame({'a': [1,2,3], 'b': [4,5,6], 'c': [6,7,8]})
和foo
列中的list_of_columns = ['a','b']
列列表.
list_of_columns
由用户动态 Select ,因此可以是['a','b']
,也可以是['a','c']
、['c']
或['a','b','c']
等
我希望list_of_columns
中的每column
个创建(嵌套)for
个循环,并以以下方式查询数据帧:
在 case list_of_columns = ['a','b']
中,循环如下:
for a in foo.a.unique():
for b in foo.b.unique():
print(foo.query(f'a=={a} and b=={b}'))
在 case list_of_columns = ['a']
中,循环如下:
for a in foo.a.unique():
print(foo.query(f'a=={a}'))
在 case list_of_columns = ['a','b','c']
中,循环如下:
for a in foo.a.unique():
for b in foo.b.unique():
for c in foo.c.unique():
print(foo.query(f'a=={a} and b=={b} and c=={c}'))
有没有办法用python编程实现这一点?