Python pandas-访问其他列的lambda函数

问题描述 投票:0回答:1

我在熊猫中有以下表格/数据框]

+-------------------------------+---------------+
|             Col_1             |     Col_2     |
+-------------------------------+---------------+
| ['Apple', 'Coffee', 'Banana'] | [Food]        |
| ['Apple']                     | [Drink]       |
| []                            | [Clothes]     |
| []                            | [Food]        |
| ['Apple', 'Orange']           | [Food]        |
| ['Apple', 'Orange']           | [Stuff, Food] |
+-------------------------------+---------------+

我想要一种复制Col_2中的值的方法(同一行)如果且仅当在Col_1中的len(x) == 0

因此所需的结果是:

+-------------------------------+---------------+
|             Col_1             |     Col_2     |
+-------------------------------+---------------+
| ['Apple', 'Coffee', 'Banana'] | [Food]        |
| ['Apple']                     | [Drink]       |
| [Clothes]                     | [Clothes]     |
| [Food]                        | [Food]        |
| ['Apple', 'Orange']           | [Food]        |
| ['Apple', 'Orange']           | [Stuff, Food] |
+-------------------------------+---------------+
python python-3.x pandas
1个回答
1
投票

看起来像简单的loc分配

m = df['Col_1'].str.len().eq(0),
df.loc[m, 'Col_1'] = df.loc[m, 'Col_2']
© www.soinside.com 2019 - 2024. All rights reserved.