gpt4 book ai didi

python - 将从一列中提取以 "Unit"开头的字符串并将其复制到新列 : Pandas

转载 作者:行者123 更新时间:2023-12-01 08:40:45 25 4
gpt4 key购买 nike

下面是我的输入数据的样子。我想使用 pandas/python/regex 将所有以“Unit”开头的字符串提取到与第二列中单词的位置相对应的新列中。任何帮助将不胜感激。

Input:

A
MARYLAND
Unit6
Unit7
Unit8
NEW SECTOR
Unit1
Unit2
NORTH SECTOR
Unit1
Unit2
PVT SECTOR
PUBLIC SECTOR
Unit1
Unit2
CENTRAL SECTOR
THERMAL
SOUTH SECTOR
Unit1
Unit2
Unit3
ACCOUNT SECTOR
DOLBY DIGITAL
WASHINGTON


Output:

A B
MARYLAND
Unit6 Unit6
Unit7 Unit7
Unit8 Unit8
NEW SECTOR
Unit1 Unit1
Unit2 Unit2
NORTH SECTOR
Unit1 Unit1
Unit2 Unit2
PVT SECTOR
PUBLIC SECTOR
Unit1 Unit1
Unit2 Unit2
CENTRAL SECTOR
THERMAL
SOUTH SECTOR
Unit1 Unit1
Unit2 Unit2
Unit3 Unit3
ACCOUNT SECTOR
DOLBY DIGITAL
WASHINGTON

最后,现在“Unit”字符串已复制到新列,我想从 A 列中删除这些值:

    A            B
MARYLAND
Unit6
Unit7
Unit8
NEW SECTOR
Unit1
Unit2
NORTH SECTOR
Unit1
Unit2
PVT SECTOR
PUBLIC SECTOR
Unit1
Unit2
CENTRAL SECTOR
THERMAL
SOUTH SECTOR
Unit1
Unit2
Unit3
ACCOUNT SECTOR
DOLBY DIGITAL
WASHINGTON

最佳答案

使用str.extractfillna :

df['B'] = df['A'].str.extract('(^Unit\d+)')
df.loc[df['B'].notnull(),'A'] = ''
df['B'].fillna('',inplace=True)

print(df)
A B
0 MARYLAND
1 Unit6
2 Unit7
3 Unit8
4 NEW SECTOR
5 Unit1
6 Unit2
7 NORTH SECTOR
8 Unit1
9 Unit2
10 PVT SECTOR
11 PUBLIC SECTOR
12 Unit1
13 Unit2
14 CENTRAL SECTOR
15 THERMAL
16 SOUTH SECTOR
17 Unit1
18 Unit2
19 Unit3
20 ACCOUNT SECTOR
21 DOLBY DIGITAL
22 WASHINGTON

关于python - 将从一列中提取以 "Unit"开头的字符串并将其复制到新列 : Pandas,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53512173/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com