我有一個數據框有一個電影名稱列和3個其他列(我們稱之爲A,B和C),它們是來自3個不同來源的評級。 有很多電影只有一個評級,一些電影有來自3個論壇的組合,有些沒有評級。我想創建一個新列將:如何基於其他三列之一創建新列?
- 如果列從相關B.
- 評價,使用A.
- 如果A柱是空的,獲得相關的評價。如果B柱是空的,從C 獲得相關評級
- 若C柱是空的,返回「未分級」
這是我在我的代碼至今:
def check_rating(rating):
if newyear['Yahoo Rating'] != "\\N":
return rating
else:
if newyear['Movie Mom Rating'] != "\\N":
return rating
else:
if newyear['Critc Rating'] != "\\N":
return rating
else:
return "Unrated"
df['Rating'] = df.apply(check_rating, axis=1)
我得到的錯誤是:
ValueError: ('The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().', 'occurred at index 0')
對於Visual我的數據框,這裏是newyear.head()
:
我不知道這是什麼價值的錯誤意味着解決這個問題,如果這是正確的做法。
請發佈您的數據框的小樣本(作爲文本,而不是圖像)和預期的輸出。 –