擅长:python、mysql、java
<p>只考虑重要列:</p>
<pre><code> Key Col1 Col2 Col3 Col4 Col5
0 1 a b c d e
1 3 r b x d c
2 2 k d q l w
3 0 w a c s w
</code></pre>
<p>假设<code>Key</code>始终位于第一列,<code>apply</code>函数将<code>list</code>函数用于除第一列(<code>Key</code>)以外的所有感兴趣的<code>Col</code>列,然后根据<code>Key</code>中的值对列表进行索引:</p>
<pre><code>df.apply(lambda x : list(x[1:])[:x[0]], axis=1)
</code></pre>
<ul>
<li>这要求<code>Key</code>成为<code>int</code>
<ul>
<li>如果<code>Key</code>不是<code>int</code>,那么使用<code>df = df.astype({'Key': 'int32'})</code></li>
</ul></li>
</ul>
<p>输出:</p>
<pre><code>0 [a]
1 [r, b, x]
2 [k, d]
3 []
</code></pre>