在 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