【发布时间】:2016-01-22 04:37:41
【问题描述】:
我有一系列整数 s 和一个整数列表 l。我想构建一个新系列t 这样t[i] == l[s[i]]。 pandas.Series 有一个名为 map 的方法,它对 dict 对象执行此操作,这意味着这样的事情会起作用:
t = s.map({i: v for i, v in enumerate(l)})
但是有更直接的方法吗?
【问题讨论】:
-
IIUC,你就不能
t = s.map(pd.Series(l))吗? -
t = [l[s[i]] for i in range(len(s))]? -
@EdChum 是的,你可以!我猜这是正确的答案?
-
@Alexander
l和s的长度没有关系,但是max(s) < len(l)。