删除python中单词的空格

删除python中单词的空格,python,pandas,Python,Pandas,嗨,我有一个像这样的df Product Prod1 Prod 1 Prod2 Prod 2 Prod 2 Prod 3 Prod3 and so on 我基本上想把所有这些Prod1、Prod2和Prod3等转换成分类变量。为此,我需要删除PROD和数字之间的空白,例如删除PROD和1之间的空间,以便PROD1、PROD 1等成为PROD1,这样对于相同的产品没有重复条目。 上表的预期产出 Product Prod1 Prod1 Prod2 Prod2 Prod2 Prod3 Prod3

嗨,我有一个像这样的df

Product
Prod1
Prod 1
Prod2
Prod 2
Prod 2
Prod 3
Prod3  and so on
我基本上想把所有这些Prod1、Prod2和Prod3等转换成分类变量。为此,我需要删除PROD和数字之间的空白,例如删除PROD和1之间的空间,以便PROD1、PROD 1等成为PROD1,这样对于相同的产品

没有重复条目。 上表的预期产出

Product
Prod1
Prod1
Prod2
Prod2
Prod2
Prod3
Prod3  and so on

所有的答案都只是为了一句话。我想要一个可以复制到整个表的答案,并删除列中所有单词之间的空格

让我们试试
str。用以下模式替换
,删除
Prod
数字之间的空格

df['Product'] = df.Product.str.replace('(Prod)(\s+)(\d)', r'\1\3')
输出:

            Product
0             Prod1
1             Prod1
2             Prod2
3             Prod2
4             Prod2
5             Prod3
6  Prod3  and so on
使用
str.split().agg(“.join)

Ex:

df['Product'] = df['Product'].str.split().agg("".join)
#or
#df['Product'] = df['Product'].str.replace(r"(\s+)", "")
print(df)
  Product
0   Prod1
1   Prod1
2   Prod2
3   Prod2
4   Prod2
5   Prod3
6   Prod3
输出:

df['Product'] = df['Product'].str.split().agg("".join)
#or
#df['Product'] = df['Product'].str.replace(r"(\s+)", "")
print(df)
  Product
0   Prod1
1   Prod1
2   Prod2
3   Prod2
4   Prod2
5   Prod3
6   Prod3
试试看:

df["Product"] = [i.replace(" ", "") for i in df.Product]

我想这是最简单的方法

df['Product'] = df['Product'].str.replace(' ','')

替换({“”:'},regex=True)快速问题,\1\3是什么意思?在本例中,
\1
指第一个捕获组,
Prod
<代码>\3
引用了第三个捕获组。这与所需的输出不匹配吗?它将给出与第二个答案相同的
prod3,并且很快将给出
结果。@datanoveler我相信“等等”是为了数据列表,我明白了,很好!