我有一个df,其中的列条目如下所示:
data = [['5-820.0g:2021-05-18T07:25, 5-986.x:2021-05-18T07:25', '5-820.00:2021-05-18T07:25, 5-986.x:2021-05-18T07:25'], ['5-820.00:2021-05-18T07:25, 5-986.x:2021-05-18T07:25', '5-820.00:2021-05-18T07:25, 5-986.x:2021-05-18T07:25']]
df = pd.DataFrame(data, columns=['col_1', 'col_2'])
我需要他们在第一个“:”、“T”和",“上分裂,并展开它们。
如果我用古典
df.column_name.str.split('[\:,T]', expand=True)
它也被第二个':'分割。我如何才能避免这种情况以获得所需的输出:
data_2 = [['5-820.0g', '2021-05-18' ,'07:25' , '5-986.x', '2021-05-18' ,'07:25'], ['5-820.00', '2021-05-18' ,'07:25' , '5-986.x', '2021-05-18' ,'07:25']]
df = pd.DataFrame(data_2, columns=['col_1', 'col_2', 'col_3', 'col_4', 'col_5', 'col_6'])
df
1条答案
按热度按时间toe950271#
您想要达到的目的并不完全清楚,但是您可以将分割限制为
d
或f
之后的:
:或前面没有数字:
输出量:
更新示例:
如果
:
后面跟着4位数的年份和-
,则拆分:
输出量: