基本上我有一个Pandas DataFrame,看起来像这样:
| A | B | C | D |
| 2 | 4 | 1 | 7 |
| 2 | 5 | 6 | 7 |
| 3 | 6 | 2 | 7 |
我需要添加一个额外的列E,其中包含符合条件的列的列表。例如>=3。在这种情况下,它看起来应该是这样的:
| A | B | C | D | E |
| 2 | 4 | 1 | 7 | [B, D] |
| 2 | 5 | 6 | 7 | [B, C, D] |
| 3 | 6 | 2 | 7 | [A, B, D] |
我试过用1列创建一个全新的 Dataframe ,然后将两列连接起来。但没有成功。还尝试使用np.where
,但DataFrame的列太多,无法有效地执行此操作。
4条答案
按热度按时间7vux5j2d1#
可能的解决方案:
输出:
suzh9iv82#
使用
dot
:编辑:要获得
list
:6rqinv9w3#
答案如下:
blpfk2vs4#
对
stack
和groupby.agg
使用整形:输出: