Python 从熊猫中的数据框列中删除空间

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/41476150/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-20 01:02:21  来源:igfitidea点击:

Removing space from dataframe columns in pandas

pythonpandasdataframe

提问by SAM244776

I am trying to remove spaces from a dataframe I have. The columns names look like below. I am trying to get the spaces between name out and replace it with "_" wherever present.

我正在尝试从我拥有的数据框中删除空格。列名称如下所示。我试图去掉名字之间的空格,并在任何地方用“_”替换它。

['join_date' 'fiscal_quarter' 'fiscal_year' 'primary_channel'
 'secondary_channel' 'customer_count' 'new_members' 'revisit_next_day'
 'revisit_14_day' 'demand_1yr' 'revisit_next_day_rate'
 'revisit_14_day_rate' 'demand_1yr_per_new_member' u'ch_Ad Network'
 u'ch_Affiliate' u'ch_Branded SEM' u'ch_DSP' u'ch_Daily Email'
 u'ch_Daily Messaging' u'ch_Direct' u'ch_Direct Publisher' u'ch_Email'
 u'ch_Feeds' u'ch_Native' u'ch_Non-Branded SEM' u'ch_Organic Search'
 u'ch_Paid Social' u'ch_Site' u'ch_Special Email' u'ch_Television'
 u'ch_Trigger Email' u'ch_UNMAPPED' u'ch_Unpaid Social' u'quarter_Q2'
 u'quarter_Q3' u'quarter_Q4']

回答by Psidom

  • To remove white spaces:
  • 要删除空格

1) To remove white space everywhere:

1)要删除无处不在的空白:

df.columns = df.columns.str.replace(' ', '')

2) To remove white space at the beginning of string:

2)删除字符串开头的空格

df.columns = df.columns.str.lstrip()

3) To remove white space at the end of string:

3)删除字符串末尾的空格

df.columns = df.columns.str.rstrip()

4) To remove white space at both ends:

4)去除两端的空白:

df.columns = df.columns.str.strip()
  • To replace white spaces with other characters(underscore for instance):
  • 用其他字符替换空格(例如下划线):

5) To replace white space everywhere

5)到处替换空白

df.columns = df.columns.str.replace(' ', '_')

6) To replace white space at the beginning:

6) 替换开头的空格:

df.columns = df.columns.str.replace('^ +', '_')

7) To replace white space at the end:

7) 替换末尾的空格:

df.columns = df.columns.str.replace(' +$', '_')

8) To replace white space at both ends:

8) 替换两端的空格:

df.columns = df.columns.str.replace('^ +| +$', '_')


All above applies to a specific column as well, assume you have a column named col, then just do:

以上所有内容也适用于特定列,假设您有一个名为 的列col,然后执行以下操作:

df[col] = df[col].str.strip()  # or .replace as above