Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 创建事件标志_Python 3.x_Pandas_Events_Event Handling - Fatal编程技术网

Python 3.x 创建事件标志

Python 3.x 创建事件标志,python-3.x,pandas,events,event-handling,Python 3.x,Pandas,Events,Event Handling,我正在创建事件标志(即第一个事件、最后一个事件、其他事件(在第一个事件和最后一个事件之间)。事件在每场比赛中发生(即gsm\u id)。我已经创建了第一个事件(第一个事件)和最后一个事件(最后一个事件)的记录在两个不同的列中。您可以查看下表以了解更多详细信息 gsm_id eventdatetime matchdatetime PreviousEventTime First Event Last Event 2462794 8/11/2017 18:46 8/11/2017 18:

我正在创建事件标志(即第一个事件、最后一个事件、其他事件(在第一个事件和最后一个事件之间)。事件在每场比赛中发生(即gsm\u id)。我已经创建了第一个事件(第一个事件)和最后一个事件(最后一个事件)的记录在两个不同的列中。您可以查看下表以了解更多详细信息

 gsm_id eventdatetime   matchdatetime   PreviousEventTime   First Event Last Event
2462794 8/11/2017 18:46 8/11/2017 18:45 8/11/2017 18:45 8/11/2017 18:46 8/11/2017 20:09
2462794 8/11/2017 18:49 8/11/2017 18:45 8/11/2017 18:46 8/11/2017 18:46 8/11/2017 20:09
2462794 8/11/2017 19:13 8/11/2017 18:45 8/11/2017 18:49 8/11/2017 18:46 8/11/2017 20:09
2462794 8/11/2017 19:31 8/11/2017 18:45 8/11/2017 19:13 8/11/2017 18:46 8/11/2017 20:09
2462794 8/11/2017 19:40 8/11/2017 18:45 8/11/2017 19:31 8/11/2017 18:46 8/11/2017 20:09
2462794 8/11/2017 20:07 8/11/2017 18:45 8/11/2017 19:40 8/11/2017 18:46 8/11/2017 20:09
2462794 8/11/2017 20:09 8/11/2017 18:45 8/11/2017 20:07 8/11/2017 18:46 8/11/2017 20:09
2462795 8/12/2017 17:39 8/12/2017 16:30 8/12/2017 16:30 8/12/2017 17:39 8/12/2017 17:44
2462795 8/12/2017 17:44 8/12/2017 16:30 8/12/2017 17:39 8/12/2017 17:39 8/12/2017 17:44
2462796 8/12/2017 14:23 8/12/2017 14:00 8/12/2017 14:00 8/12/2017 14:23 8/12/2017 15:27
2462796 8/12/2017 14:38 8/12/2017 14:00 8/12/2017 14:23 8/12/2017 14:23 8/12/2017 15:27
2462796 8/12/2017 14:42 8/12/2017 14:00 8/12/2017 14:38 8/12/2017 14:23 8/12/2017 15:27
2462796 8/12/2017 15:08 8/12/2017 14:00 8/12/2017 14:42 8/12/2017 14:23 8/12/2017 15:27
2462796 8/12/2017 15:27 8/12/2017 14:00 8/12/2017 15:08 8/12/2017 14:23 8/12/2017 15:27
2462797 8/12/2017 14:22 8/12/2017 14:00 8/12/2017 14:00 8/12/2017 14:22 8/12/2017 15:17
2462797 8/12/2017 14:25 8/12/2017 14:00 8/12/2017 14:22 8/12/2017 14:22 8/12/2017 15:17
2462797 8/12/2017 15:17 8/12/2017 14:00 8/12/2017 14:25 8/12/2017 14:22 8/12/2017 15:17
数据可从google drive下载,如下所示:

[

我想做的就是这样。 我将创建一个新列来记录标志(字符串)(即“first event”,其中eventdatetime和first event相同,“Last event”,其中eventdatetime和Last event相同,其余将分配为“Other”。 我尝试使用np.where方法,但它只能给我两个参数。 有人能建议如何处理3个参数来获得上述新列吗

谢谢 Zep

我认为需要:


m1 = df['eventdatetime'] == df['First Event']
m2 = df['eventdatetime'] == df['Last Event']
df['flag'] = np.select([m1, m2], ['First event','Last event'], default='Other')
print (df)
     gsm_id    eventdatetime    matchdatetime PreviousEventTime  \
0   2462794  8/11/2017 18:46  8/11/2017 18:45   8/11/2017 18:45   
1   2462794  8/11/2017 18:49  8/11/2017 18:45   8/11/2017 18:46   
2   2462794  8/11/2017 19:13  8/11/2017 18:45   8/11/2017 18:49   
3   2462794  8/11/2017 19:31  8/11/2017 18:45   8/11/2017 19:13   
4   2462794  8/11/2017 19:40  8/11/2017 18:45   8/11/2017 19:31   
5   2462794  8/11/2017 20:07  8/11/2017 18:45   8/11/2017 19:40   
6   2462794  8/11/2017 20:09  8/11/2017 18:45   8/11/2017 20:07   
7   2462795  8/12/2017 17:39  8/12/2017 16:30   8/12/2017 16:30   
8   2462795  8/12/2017 17:44  8/12/2017 16:30   8/12/2017 17:39   
9   2462796  8/12/2017 14:23  8/12/2017 14:00   8/12/2017 14:00   
10  2462796  8/12/2017 14:38  8/12/2017 14:00   8/12/2017 14:23   
11  2462796  8/12/2017 14:42  8/12/2017 14:00   8/12/2017 14:38   
12  2462796  8/12/2017 15:08  8/12/2017 14:00   8/12/2017 14:42   
13  2462796  8/12/2017 15:27  8/12/2017 14:00   8/12/2017 15:08   
14  2462797  8/12/2017 14:22  8/12/2017 14:00   8/12/2017 14:00   
15  2462797  8/12/2017 14:25  8/12/2017 14:00   8/12/2017 14:22   
16  2462797  8/12/2017 15:17  8/12/2017 14:00   8/12/2017 14:25   

        First Event       Last Event         flag  
0   8/11/2017 18:46  8/11/2017 20:09  First event  
1   8/11/2017 18:46  8/11/2017 20:09        Other  
2   8/11/2017 18:46  8/11/2017 20:09        Other  
3   8/11/2017 18:46  8/11/2017 20:09        Other  
4   8/11/2017 18:46  8/11/2017 20:09        Other  
5   8/11/2017 18:46  8/11/2017 20:09        Other  
6   8/11/2017 18:46  8/11/2017 20:09   Last event  
7   8/12/2017 17:39  8/12/2017 17:44  First event  
8   8/12/2017 17:39  8/12/2017 17:44   Last event  
9   8/12/2017 14:23  8/12/2017 15:27  First event  
10  8/12/2017 14:23  8/12/2017 15:27        Other  
11  8/12/2017 14:23  8/12/2017 15:27        Other  
12  8/12/2017 14:23  8/12/2017 15:27        Other  
13  8/12/2017 14:23  8/12/2017 15:27   Last event  
14  8/12/2017 14:22  8/12/2017 15:17  First event  
15  8/12/2017 14:22  8/12/2017 15:17        Other  
16  8/12/2017 14:22  8/12/2017 15:17   Last event