df
a b c bb
0 1 4 4 4
1 2 5 5 5
2 7 87 87 87
3 5 6 6 6
使用列表理解:
^{pr2}$
这显然可以用于任何你喜欢的情况。在
df_grouped = df.groupby(['Column1'][[i for i in df.columns if 'b' in i]].sum()
用我的超级简单的例子,一些并排的表演:
%timeit df[[i for i in df.columns if 'b' in i]]
1000 loops, best of 3: 394 µs per loop
%timeit df[df.columns.difference(['a','c'])]
1000 loops, best of 3: 598 µs per loop
可以按差异定义列:
请注意,
difference
方法使用集合,因此列的顺序不能保证。在如果您可以用条件选择所需的列,这里有一个超级简单的方法。我偶尔会使用这种方法,但不适用于100列以上的列,因此我不确定它对性能的影响。在
对于示例df:
使用列表理解:
^{pr2}$这显然可以用于任何你喜欢的情况。在
用我的超级简单的例子,一些并排的表演:
相关问题 更多 >
编程相关推荐