我有一个包含大量变量的 Pandas 数据框。这可以简化为:
tempDF = pd.DataFrame({ 'var1': [12,12,12,12,45,45,45,51,51,51],
'var2': ['a','a','b','b','b','b','b','c','c','d'],
'var3': ['e','f','f','f','f','g','g','g','g','g'],
'var4': [1,2,3,3,4,5,6,6,6,7]})
Run Code Online (Sandbox Code Playgroud)
如果我想选择数据帧的一个子集(例如 var2='b' 和 var4=3),我会使用:
tempDF.loc[(tempDF['var2']=='b') & (tempDF['var4']==3),:]
Run Code Online (Sandbox Code Playgroud)
但是,如果匹配条件存储在字典中,是否可以选择数据帧的子集,例如:
tempDict = {'var2': 'b','var4': 3}
Run Code Online (Sandbox Code Playgroud)
重要的是变量名称不是预定义的,并且字典中包含的变量数量是可变的。
我一直对此感到困惑一段时间,因此任何建议将不胜感激。