如何检查“类型”的python数据帧列中的AND和OR条件;数组";?

如何检查“类型”的python数据帧列中的AND和OR条件;数组";?,python,arrays,pandas,dataframe,if-statement,Python,Arrays,Pandas,Dataframe,If Statement,我创建了一个函数来检查数据帧数组列中的每个值,然后相应地将值分配给一个新列。基本上是根据食物摄入量预测饮食是否健康 我写的函数: 创建一个名为“diet_status”的新列,并根据“food_Intain”列(类型为数组)中的值指定该值 def diet(a): if 'fruits' in a: y = 'healthy' elif 'vegetables' in a: y = 'healthy' elif 'chips' in a:

我创建了一个函数来检查数据帧数组列中的每个值,然后相应地将值分配给一个新列。基本上是根据食物摄入量预测饮食是否健康

我写的函数:

创建一个名为“diet_status”的新列,并根据“food_Intain”列(类型为数组)中的值指定该值

 def diet(a):
    if 'fruits' in a:
        y = 'healthy'
    elif 'vegetables' in a:
        y = 'healthy'
    elif 'chips' in a:
        y = 'unhealthy'
    elif 'sweets' in a:
        y = 'unhealthy'
    else
        y = 'NA'
    return y 



df["diet_status"] = df["food_intake"].apply(diet)

如何在此处检查多个条件?例如,如果“食物摄入”数组包含“(水果和蔬菜)和(薯条或糖果)”,我想将其命名为“平衡”。基本上需要检查数组中的值和/或条件。有人能帮我吗。

因为在这里使用标量是必要的使用
,而不是
&

 def diet(a):

    m1 = ('fruits' in a) or ('vegetables' in a)
    m2 = ('chips' in a) or ('sweets' in a)
    if m1:
        y = 'healthy'

    elif m2: 
        y = 'unhealthy'

    elif m1 and m2:
        y = 'balanced'
        
    else
        y = 'NA'
    return y 

因为在这里使用标量是必要的,所以请使用
,而不是
&

 def diet(a):

    m1 = ('fruits' in a) or ('vegetables' in a)
    m2 = ('chips' in a) or ('sweets' in a)
    if m1:
        y = 'healthy'

    elif m2: 
        y = 'unhealthy'

    elif m1 and m2:
        y = 'balanced'
        
    else
        y = 'NA'
    return y 

foot_的摄入量是什么样子的?这是一个句子吗?foot_是什么样子的?这是一个句子吗?