在 pandas Python 中分隔文本和数字
separating text and numbers in pandas Python
如何在 Panda Python 中将文本与数字分开,如果它还没有被 space (" ") 分开?
在我的数据框 df 中,有一列包含 0.3314QSF。
我想将其分成两列,分别包含数据框中两个不同列中的 0.3314 和 QSF。
数据框由数千行组成,此规则应该适用于所有行。
谢谢
你可以使用 str.extract
:
>>> df['a'].str.extract(r'([\d.]+)(\w+)')
0 1
0 0.3314 QSF
或使用 str.split
(你会有一个额外的空条目,但你可以删除):
>>> df['a'].str.split(r'([\d.]+)', expand=True)
0 1 2
0 0.3314 QSF
>>> df['a'].str.split(r'([\d.]+)', expand=True).drop(0, axis=1)
1 2
0 0.3314 QSF
如何在 Panda Python 中将文本与数字分开,如果它还没有被 space (" ") 分开?
在我的数据框 df 中,有一列包含 0.3314QSF。
我想将其分成两列,分别包含数据框中两个不同列中的 0.3314 和 QSF。 数据框由数千行组成,此规则应该适用于所有行。
谢谢
你可以使用 str.extract
:
>>> df['a'].str.extract(r'([\d.]+)(\w+)')
0 1
0 0.3314 QSF
或使用 str.split
(你会有一个额外的空条目,但你可以删除):
>>> df['a'].str.split(r'([\d.]+)', expand=True)
0 1 2
0 0.3314 QSF
>>> df['a'].str.split(r'([\d.]+)', expand=True).drop(0, axis=1)
1 2
0 0.3314 QSF