我得到這個錯誤以下代碼Unhashable類型:「名單」錯誤
def cleaning(CURRENT,STRING,NEXT):
data.ix[data[NEXT].str.contains(STRING,na=False),CURRENT] =...
data[NEXT][data[NEXT].str.contains(STRING,na=False)]
d = ['lower','Less']
c = a[5:]
for x,y in zip(range(len(c)),d):
cleaning(c[x],d,c[x+1])
cleaning(c[x],d,c[x+2])
這裏,數據是數據框大熊貓。 然而,對於同樣的功能,我沒有得到錯誤在下面的代碼
a = ['UBC','LBC', 'HC', 'FC', 'P:C/F','P', 'A', 'Sex']
b = ['upper','lower','hair','footwear']
for x,y in zip(range(len(a)),b):
cleaning(a[x],y,a[x+1])
cleaning(a[x],y,a[x+2])
我知道這是因爲我們不能用一個列表作爲一個字典的關鍵,但我不知道怎麼發生的事情在這裏,爲什麼它是爲一個循環而不是另一個循環工作的。
您正在傳遞'd'作爲'STRING'參數列表。你的意思是代替傳入'y'嗎? –
另外,什麼是'a'?如果'a'是一個列表列表,那麼'c [']'是一個列表,然後以'NEXT'的形式傳入。 –
請確認您的例外包含**完整追溯**。我有一種預感,我剛剛證實了這一點,但追溯會使這一點變得更加清晰。 –