擅长:python、mysql、java
<p>与jezrael的解决方案类似,但要注意删除空格并使用<code>set</code>来提高性能:</p>
<pre><code>import pandas as pd
df = pd.DataFrame({'pastLocation': ['delhi', 'delhi', 'mumbai', 'pune'],
'currentLocation': ['bangalore', 'london,pune,delhi',
'mumbai', 'pune, noida']})
sets = [{i.strip() for i in row} for row in df['currentLocation'].str.split(',').values]
df['changeInLocation'] = [int(past not in current) for past, current in \
zip(df['pastLocation'], sets)]
print(df)
currentLocation pastLocation changeInLocation
0 bangalore delhi 1
1 london,pune,delhi delhi 0
2 mumbai mumbai 0
3 pune, noida pune 0
</code></pre>