擅长:python、mysql、java
<h3>理解</h3>
<p>这取决于数据格式始终为15个字符。<br/>
另外,由于我们将不得不删除一列<code>'data'</code>,所以我认为最好是从头开始创建一个数据帧。你知道吗</p>
<pre><code>pd.DataFrame([[s[:15], s[16:]] for s in df.data], columns=['date', 'machine'])
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
</code></pre>
<hr/>
<h3><code>rsplit</code></h3>
<p>取决于<code>'machine'</code>名称从不包含空格。你知道吗</p>
<p>这是因为<code>pandas.Series.str</code>提供的字符串访问器是一个iterable,可以在类似于<code>x, y = (1, 2)</code>的赋值语句中使用</p>
<p>还请注意,我毫无歉意地接受了使用<a href="https://stackoverflow.com/questions/58559343/pandas-split-after-month-day-time-from-rest-of-string/58560037#comment103439330_58559476">^{<cd6>} in this instance from @jezrael</a>的想法</p>
<pre><code>df['date'], df['machine'] = df.pop('data').str.rsplit(n=1).str
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
</code></pre>