熊猫在一个月日的时间后从其余的字符串中分离出来

sec*_*guy 5 python regex python-3.x pandas

我正在使用熊猫数据框。我试图在日期和时间之后从字符串的其余部分中拆分一列。

df
   data
0  Oct 22 12:56:52 server1
1  Oct 22 12:56:52 server2
2  Oct 22 12:56:53 server2
3  Oct 22 12:56:54 server2
4  Oct 22 12:56:56 comp2
Run Code Online (Sandbox Code Playgroud)

所需的输出:

df
   date              machine
0  Oct 22 12:56:52   server1
1  Oct 22 12:56:52   server2
2  Oct 22 12:56:53   server2
3  Oct 22 12:56:54   server2
4  Oct 22 12:56:56   comp2
Run Code Online (Sandbox Code Playgroud)

如果我尝试类似的操作,df["data"].str.extract('^(.*? [0-9]{2}) (.*)$')则会在22天后剥离所有内容

Qua*_*ang 5

您还可以传递日期\时间的确切形式:

df['data'].str.extract('(\w* \d* \d*:\d*:\d*) (.*)')
Run Code Online (Sandbox Code Playgroud)

输出:

                 0        1
0  Oct 22 12:56:52  server1
1  Oct 22 12:56:52  server2
2  Oct 22 12:56:53  server2
3  Oct 22 12:56:54  server2
4  Oct 22 12:56:56    comp2
Run Code Online (Sandbox Code Playgroud)

  • df ['data']。str.extract('(?P <date> \ w * \ d * \ d *:\ d *:\ d *)(?P <machine>。*)')` (3认同)