玩弄了一会儿,并通过阅读后的源代码的
Dataframe.query,我不能想出一个办法做到这一点。
如果不是不可能的话,显然至少是强烈建议不要这样做。当这个问题出现在github上时,多产的Pandas dev / maintainer
jreback建议
df.eval()用于选择列和
df.query()对行进行过滤。
更新:
javadba指出的返回值
eval不是数据帧。例如,充实jreback的示例更多…
df.eval('A')
返回熊猫系列,但是
df.eval(['A', 'B'])
不返回Dataframe,而是返回(Pandas系列的)列表。
因此,看起来最终保持灵活性以对行和列进行过滤的最佳方法是使用
iloc/
loc,例如
df.loc[0:4, ['A', 'C']]
输出
A C0 -0.497163 -0.0464841 1.331614 0.7417112 1.046903 -2.5115483 0.314644 -0.5261874 -0.061883 -0.615978
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)