簡體   English   中英

合並熊貓中的時間戳列

[英]Merge timestamp column in pandas

我有一個包含大量列的日志文件,我想將時間戳列合並為一個,如下例所示

start time  End time process ID. . . 
10:02       11:10    A       1
10:32       11:23    B       1
...         ....     A       2
...         ....     B       2
...         ....     C       2  

注意:單個ID可以有多個類似的進程,例如一個ID中有多個A

time     process   ID . . .
10:02    A_start   1  
11:10    A_end     1
10:32    B_start   1
11:23    B_end     1
....     A_start   2
....     A_end     2
....     B_start   2
....       ...    ..

嘗試在熊貓上融化,但似乎我在這里遺漏了一些東西

df.melt(id_vars=["ID", "process"], 
        var_name="End time", 
        )

IIUC,您可以使用melt進行一些重塑:

out = (df
 .rename(columns={'start time': 'start', 'End time': 'end'})
 .melt(['process', 'ID'], value_name='time')
 .assign(process=lambda d: d['process']+'_'+d.pop('variable'))
)

輸出:

   process  ID   time
0  A_start   1  10:02
1  B_start   1  10:32
2    A_end   1  11:10
3    B_end   1  11:23

使用的輸入:

  start time End time process  ID
0      10:02    11:10       A   1
1      10:32    11:23       B   1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM