我正在Python上使用简单的函数:
def liste_bis(data):
Country_Name = []
Platform_Category = []
Platform = []
Country_Acronym = []
for m,n in enumerate (np.arange(np.shape(data)[0])):
if (data["domain1"][m]=='afe'):
Country_Name.append('France')
Platform_Category.append('App')
Platform.append('BDDF-HB App')
Country_Acronym.append('FR')
elif (data["domain1"][m]=='afer'):
Country_Name.append('France')
Platform_Category.append('Site')
Platform.append('BDDF-HB Site')
Country_Acronym.append('FR')
elif (data["domain1"][m]=='afert'):
Country_Name.append('France')
Platform_Category.append('App')
Platform.append('BDDF-BNP App')
Country_Acronym.append('FR')
elif (data["domain1"][m]=='aferty'):
Country_Name.append('France')
Platform_Category.append('Site')
Platform.append('BDDF-BNP Site')
Country_Acronym.append('FR')
elif (data["domain1"][m]=='afertyu'):
Country_Name.append('Luxembourg')
Platform_Category.append('App')
Platform.append('BGL-BNP App')
Country_Acronym.append('LU')
dictionnaire = {"Country_Name":Country_Name,"Platform_Category":Platform_Category,"Platform":Platform,"Country_Acronym":Country_Acronym}
return(dictionnaire)
但是我有一些麻烦。 当我执行programm时,它返回我:
'The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().'
但是当我将此功能与只有1行的DataFrame一起使用时,它可以正常工作。 但是,当我有多于1行时,它行不通...
让我们展示一个我使用的数据框示例: dataframe_example
能帮我吗?
谢谢
答案 0 :(得分:0)
为什么它仅对一个元素的结果起作用:当您有一个多元素系列时,其“真值”可能是一系列真值,或者可能是“都是 all < / em>这些值True”,等等。对于一行,没有这种歧义。因此,选择错误消息推荐的显式方法之一(取决于您的实际状况),然后继续。