擅长:python、mysql、java
<p>您可以定义一个显式函数来应用于整个<code>Name</code>系列。在</p>
<pre><code>df = pd.DataFrame(["LONG AAPL 2X CBZ","SHORT GOOG 10X VON"], columns=["Name"])
dmap = {"AAPL":"Apple", "GOOG":"Google"}
signmap = {"LONG": "", "SHORT": "-"}
def f(strseries):
company = strseries.str.extract(r"\s(\S+)\s").map(dmap)
leverage = strseries.str.extract(r"(\d+X)")
sign = strseries.str.extract(r"(\S+)\s").map(signmap)
return "Tracks " + company + " with " + sign + leverage + " leverage."
df['Description'] = f(df['Name'])
</code></pre>
<p>编辑:以牺牲可读性为代价,一次执行regex提取可以加快大约2倍的速度。在</p>
^{pr2}$