替代解决方案,按客户分组并应用自定义功能def get_score(temp): map_score = dict(zip(temp['class'], temp['score'])) # mapping of class and score for each customer return map_score['b'] - map_score['a']df.groupby("customer").apply(get_score)这将导致预期的答案。