Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/301.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,我发现自己在一个Dataframe列中循环执行条件,根据这些条件,下面的结果与该单元格相邻。有没有更有效的方法来执行此操作 例如,我有数据帧df: A B potato orange watermelon lettuce ... etc. 我将执行以下代码: for i in range(len(df['A']): if df['A'].iloc[i] == 'watermelon': df['B'].iloc[i] = 'red'

我发现自己在一个Dataframe列中循环执行条件,根据这些条件,下面的结果与该单元格相邻。有没有更有效的方法来执行此操作

例如,我有数据帧df:

  A          B
potato
orange
watermelon
lettuce


... etc.

我将执行以下代码:

for i in range(len(df['A']):
    if df['A'].iloc[i] == 'watermelon':
        df['B'].iloc[i] = 'red'
    elif df['A'].iloc[i] == 'lettuce':
        df['B'].iloc[i] = 'green'
    elif .... :
   
结果:

  A          B
potato     brown
orange     orange 
watermelon red
lettuce    green

水果:颜色
字典一起使用,而不是循环或
apply()

水果\u color=dict(土豆=‘棕色’、西瓜=‘红色’、莴苣=‘绿色’)
df['B']=df['A']。替换(水果颜色)
#A B
#0土豆棕
#1个橙子
#2西瓜红
#3生菜绿

水果:颜色
字典一起使用,而不是循环或
应用()

水果\u color=dict(土豆=‘棕色’、西瓜=‘红色’、莴苣=‘绿色’)
df['B']=df['A']。替换(水果颜色)
#A B
#0土豆棕
#1个橙子
#2西瓜红
#3生菜绿