Python 如何删除列中除单词之间的空白外的所有空白

Python 如何删除列中除单词之间的空白外的所有空白,python,pandas,Python,Pandas,我有一个熊猫数据框,看起来像这样: pd.DataFrame({'a':['AB CD', 'EF GH', 'IJ KL', 'MNO P', 'Q RS']}) a 0 AB CD 1 EF GH 2 IJ KL 3 MNO P 4 Q RS a 0 AB CD 1 EF GH 2 IJ KL 3 MNO P 4 Q RS 我想删除单词之间的所有空格,除了一个。我该怎么做 生成的数据帧应如下所示: p

我有一个熊猫数据框,看起来像这样:

pd.DataFrame({'a':['AB CD', 'EF  GH', 'IJ   KL', 'MNO P', 'Q   RS']})

         a
0    AB CD
1   EF  GH
2  IJ   KL
3    MNO P
4   Q   RS
       a
0  AB CD
1  EF GH
2  IJ KL
3  MNO P
4   Q RS
我想删除单词之间的所有空格,除了一个。我该怎么做

生成的数据帧应如下所示:

pd.DataFrame({'a':['AB CD', 'EF  GH', 'IJ   KL', 'MNO P', 'Q   RS']})

         a
0    AB CD
1   EF  GH
2  IJ   KL
3    MNO P
4   Q   RS
       a
0  AB CD
1  EF GH
2  IJ KL
3  MNO P
4   Q RS
使用
str.split()
agg(“.join”)

Ex:

df = pd.DataFrame({'a':['AB CD', 'EF  GH', 'IJ   KL', 'MNO P', 'Q   RS']})
df['a'] = df['a'].str.split().agg(" ".join)
print(df)
       a
0  AB CD
1  EF GH
2  IJ KL
3  MNO P
4   Q RS
输出:

df = pd.DataFrame({'a':['AB CD', 'EF  GH', 'IJ   KL', 'MNO P', 'Q   RS']})
df['a'] = df['a'].str.split().agg(" ".join)
print(df)
       a
0  AB CD
1  EF GH
2  IJ KL
3  MNO P
4   Q RS
使用
str.split()
agg(“.join”)

Ex:

df = pd.DataFrame({'a':['AB CD', 'EF  GH', 'IJ   KL', 'MNO P', 'Q   RS']})
df['a'] = df['a'].str.split().agg(" ".join)
print(df)
       a
0  AB CD
1  EF GH
2  IJ KL
3  MNO P
4   Q RS
输出:

df = pd.DataFrame({'a':['AB CD', 'EF  GH', 'IJ   KL', 'MNO P', 'Q   RS']})
df['a'] = df['a'].str.split().agg(" ".join)
print(df)
       a
0  AB CD
1  EF GH
2  IJ KL
3  MNO P
4   Q RS

试试这个

 import re
 df["a"] = df["a"].apply(lambda x: re.sub(' +', ' ', x))

试试这个

 import re
 df["a"] = df["a"].apply(lambda x: re.sub(' +', ' ', x))