所以我一直在研究一些美式橄榄球数据。团队是鳄鱼。数据没有关于天气的列,或者它们不是赢还是输,所以我一直在尝试添加一个新列。
我定义了一个函数,该函数假设从某些列中读取数据以指示它们是否会赢...
def wins(gators_past):
if gators_past.loc(axis=0)[:,1] == 'Florida' and gators_past.loc[:,17] > gators_past.loc[:,34]:
val='Gators Win'
elif gators_past.loc[:,1] == 'Florida' and gators_past.loc[:,17] < gators_past.loc[:,34]:
val='Gators Lose'
elif gators_past.loc[:,18] == 'Florida' and gators_past.loc[:,17] > gators_past.loc[:,34]:
val='Gators Lose'
elif gators_past.loc[:,18] == 'Florida' and gators_past.loc[:, 17] < gators_past.loc[:, 34]:
val='Gators Win'
return val
然后我在数据框中创建了新列...
gators_past['Gators Win/Lose'] = gators_past.apply(wins, axis=1)
print(gators_past['Gators Win/Lose'])
但是我刚得到
TypeError: ("unhashable type: 'slice'", 'occurred at index 0')
我已经研究了它,许多人都说这是使用.loc / .iloc的问题。我检查了所有使用过的地方,似乎一切都井井有条。有什么问题的想法吗?预先感谢您的帮助!