我有这种格式的数据,现在,如果满足以下条件,那么我想在类别列中输入名称, 如果, 两个没有5 三个没有2或3 六个没有3,
那我的类别应该是电视。
我将工具中的第二,三,六列添加到列表中,并将其压缩并保存在list4中,
代码:
b=[]
a=[]
for (i,j,k) in list4:
if (list4[i]==5)& (list4[j]==2|3) & (list4[k]==3):
print(i,j,k)
答案 0 :(得分:0)
如果提供所需的输入和输出,答案会容易得多。但是从外观上看,您正在寻找这样的东西:
mask = (df.two.apply(lambda x: 5 in x if type(x)=='list' else x == 5) | \
(df.three.apply(lambda x: 2 in x if type(x)=='list' else x == 2) | \
(df.three.apply(lambda x: 3 in x if type(x)=='list' else x == 3) | \
(df.six.apply(lambda x: 3 in x if type(x)=='list' else x == 3))
df['category'] = np.nan
df.loc[mask,'category'] = 'fire tv'