我的 pandas DataFrame 中有一个带有国家名称的列。我想使用 if-else 条件在列上应用不同的过滤器,并且必须在具有这些条件的 DataFrame 上添加一个新列。
当前数据框:-
Company Country
BV Denmark
BV Sweden
DC Norway
BV Germany
BV France
DC Croatia
BV Italy
DC Germany
BV Austria
BV Spain
我已经尝试过了,但在这个过程中,我必须一次又一次地定义国家。
bookings_d2.loc[(bookings_d2.Country== '丹麦') | (bookings_d2.Country== '挪威'), 'Country'] = bookings_d2.Country
在 RI 中,目前正在使用这样的 if else 条件,我想在 python 中实现同样的事情。
R代码示例1:ifelse(bookings_d2$COUNTRY_NAME %in% c('Denmark','Germany','Norway','Sweden','France','Italy','Spain','Germany','Austria' ,'Netherlands','Croatia','Belgium'), as.character(bookings_d2$COUNTRY_NAME),'Others')
R 代码示例 2 : ifelse(bookings_d2$country %in% c('Germany'), ifelse(bookings_d2 $BOOKING_BRAND %in% c('BV'),'Germany_BV','Germany_DC'),bookings_d2$country)
预期的数据框:-
Company Country
BV Denmark
BV Sweden
DC Norway
BV Germany_BV
BV France
DC Croatia
BV Italy
DC Germany_DC
BV Others
BV Others