擅长:python、mysql、java
<p>也许是这样的?但是您需要使用此解决方案在之后重命名列。你知道吗</p>
<pre><code>df["combined"] = [ "{}_{}".format(x,y) for x,y in zip(df.hobby,df.since)]
df.groupby("name")["combined"]
.agg(lambda x: "_".join(x))
.str.split("_",expand=True)
</code></pre>
<p>结果是:</p>
<pre><code> 0 1 2 3 4 5
name
chris E 2005 D 2001 None None
john A 2005 None None None None
mary G 2013 None None None None
paul A 1995 B 2015 C 1986
</code></pre>