【发布时间】:2020-07-13 21:37:06
【问题描述】:
是否有允许根据条件从不同列中进行选择的 pandas 函数?这类似于 SQL Select 子句中的 CASE 语句。例如,假设我有以下 DataFrame:
foo = DataFrame(
[['USA',1,2],
['Canada',3,4],
['Canada',5,6]],
columns = ('Country', 'x', 'y')
)
我想在 Country=='USA' 时从“x”列中选择,当 Country=='Canada' 时从“y”列中选择,结果如下:
Country x y z
0 USA 1 2 1
1 Canada 3 4 4
2 Canada 5 6 6
[3 rows x 4 columns]
【问题讨论】:
-
列
z从何而来? -
z 将是“组合”列,来自 x 或 y 列,具体取决于国家/地区