<p>这是<code>df.pivot</code>的作业:</p>
<pre><code>import pandas as pd
from io import StringIO
df = pd.read_csv(StringIO(
'''
time,name,feature,value
33 20 May 2016 14:00:00 -0700,John,badL,2
45 19 May 2016 18:00:00 -0700,John,badL,1
120 17 May 2016 11:00:00 -0700,John,badL,1
220 20 May 2016 14:00:00 -0700,John,totalL,20
450 19 May 2016 18:00:00 -0700,John,totalL,15
330 18 May 2016 15:00:00 -0700,Mary,badL,2
330 18 May 2016 15:00:00 -0700,Mary,totalL,20
550 21 May 2016 12:00:00 -0700,Mary,adCmd,4
700 22 May 2016 16:00:00 -0700,Mary,PC,3
800 22 May 2016 16:00:00 -0700,Mary,eCon,200
'''), sep=',').set_index(['time', 'name'])
df_new = df.pivot(columns='feature').fillna(0).astype(int)
# value
# feature PC adCmd badL eCon totalL
# time name
# 120 17 May 2016 11:00:00 -0700 John 0 0 1 0 0
# 220 20 May 2016 14:00:00 -0700 John 0 0 0 0 20
# 33 20 May 2016 14:00:00 -0700 John 0 0 2 0 0
# 330 18 May 2016 15:00:00 -0700 Mary 0 0 2 0 20
# 45 19 May 2016 18:00:00 -0700 John 0 0 1 0 0
# 450 19 May 2016 18:00:00 -0700 John 0 0 0 0 15
# 550 21 May 2016 12:00:00 -0700 Mary 0 4 0 0 0
# 700 22 May 2016 16:00:00 -0700 Mary 3 0 0 0 0
# 800 22 May 2016 16:00:00 -0700 Mary 0 0 0 200 0
</code></pre>