我正在将CSV文件读入数据帧。我需要从所有stringlike单元格中去掉空白,让Python 2.7中的其他单元格保持不变。
我在做的是:
def remove_whitespace( x ):
if isinstance( x, basestring ):
return x.strip()
else:
return x
my_data = my_data.applymap( remove_whitespace )
对于熊猫来说,有更好或者更习惯的方法吗?
有没有一种更有效的方法(也许是按列来做)?
我试着寻找一个明确的答案,但是关于这个主题的大多数问题似乎是如何从列名本身去掉空白,或者假设单元格都是字符串。
调用
pandas.read_csv
时,可以使用与零个或多个空格后跟逗号、零个或多个空格匹配的正则表达式作为分隔符。例如,这里有
"data.csv"
:(第一行在
XXX
后以三个空格结束,而第二行在最后一个Y
结束。)下面使用
pandas.read_csv()
读取文件,使用正则表达式' *, *'
作为分隔符。(使用正则表达式作为分隔符仅在read_csv()
的“python”引擎中可用。)您可以使用pandas'
Series.str.strip()
方法对每个类似字符串的列快速执行此操作:偶然发现这个问题,同时寻找一个快速和极简的片段,我可以使用。必须自己从上面的柱子上组装一个。也许有人会发现它很有用:
相关问题 更多 >
编程相关推荐