Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 有没有办法将条件应用于熊猫的正则表达式?_Python_Pandas - Fatal编程技术网

Python 有没有办法将条件应用于熊猫的正则表达式?

Python 有没有办法将条件应用于熊猫的正则表达式?,python,pandas,Python,Pandas,我正在筛选pandas中的一列,但希望保留某些值 我的目标是将所有非费德勒、纳达尔和德约科维奇的球员的价值观都改为“其他”的价值观 之前: winner_name Federer Nadal Djokovic Kyrgios Hewitt 之后: winner_name Federer Nadal Djokovic Other Other 我试过这个 df['winner_name'] = df['win

我正在筛选pandas中的一列,但希望保留某些值

我的目标是将所有非费德勒、纳达尔和德约科维奇的球员的价值观都改为“其他”的价值观

之前:

winner_name 

Federer     
Nadal       
Djokovic    
Kyrgios    
Hewitt
之后:

winner_name 

Federer     
Nadal       
Djokovic    
Other    
Other
我试过这个

df['winner_name'] = df['winner_name'].replace(to_replace=r"^(.(?<!Roger Federer))*?$", value='other',regex=True) 

我希望将条件应用于多个值

np。其中
isin
在这里就足够了:

df['winner_name'] = np.where(df['winner_name'].isin(['Federer', 'Nadal', 'Djokovic']),
                             df['winner_name'], 'Other')
df['winner_name'] = np.where(df['winner_name'].isin(['Federer', 'Nadal', 'Djokovic']),
                             df['winner_name'], 'Other')