python-3.x 将一列值的特定部分添加到另一列

p1iqtdky  于 2023-01-10  发布在  Python
关注(0)|答案(1)|浏览(164)

我有下面的dataframe

import pandas as pd

data = {'existing_indiv': ['stac.Altered', 'MASO.MHD'], 'queries': ['modify', 'change']}
df = pd.DataFrame(data)

    existing_indiv     queries
0   stac.Altered       modify
1   MASO.MHD           change

我想将period之前的periodword添加到the queries columnvalues的开头

    • 预期成果:**
existing_indiv     queries
0   stac.Altered       stac.modify
1   MASO.MHD           MASO.change

有什么想法吗?

mkshixfv

mkshixfv1#

可以使用.str.extract和正则表达式^([^.]+\.)来提取第一个.之前的所有内容:

df.queries = df.existing_indiv.str.extract('^([^.]+\.)', expand=False) + df.queries

df
  existing_indiv      queries
0   stac.Altered  stac.modify
1       MASO.MHD  MASO.change

如果您更喜欢.str.split

df.existing_indiv.str.split('.').str[0] + '.' + df.queries

0    stac.modify
1    MASO.change
dtype: object

相关问题