我知道如何从单个列中获取分类列,例如:
user location
date
2017-08-28 00:00:01 user_1 lunch
2017-08-28 00:00:01 user_3 home
2017-08-28 00:00:01 user_2 bar
收件人(针对user_1)
location bar grocers home lunch work
date user
2017-08-28 00:00:00 user_1 0 0 0 1 0
2017-08-28 00:15:00 user_1 0 0 1 0 0
2017-08-28 00:30:00 user_1 0 0 1 0 0
具有:
locDfs = {}
for user, user_loc_dc in locDf.groupby('user'):
locDfs[user] = user_loc_dc.resample('15T').agg('max').bfill()
#...
loDf = locDfs[user]
loDf.reset_index(inplace=True)
loDf = pd.crosstab([loDf.date, loDf.user], loDf.location)
loDf.reset_index(inplace=True)
但是如何获取相关列的数据,而不是1或0?
user app metric
date
2017-08-28 14:15:00 user_1 app_2 0.02
2017-08-28 14:30:00 user_1 app_1 0.01
2017-08-28 14:45:00 user_1 app_1 0.01
2017-08-28 15:00:00 user_1 app_1 0.01
2017-08-28 15:15:00 user_1 app_1 0.01
收件人:
user app_1 app_2
date
2017-08-28 14:15:00 user_1 0 0.02
2017-08-28 14:30:00 user_1 0.01 0.02
2017-08-28 14:45:00 user_1 0.01 0.02
2017-08-28 15:00:00 user_1 0.01 0.02
2017-08-28 15:15:00 user_1 0.01 0.02
?