我想准备用于统计分析的数据,并且在数据集中出现空白问题。我的功能出了什么问题?
这是我使用通常可以解决问题的函数创建的代码。不幸的是,数据帧似乎并非如此。有关数据框的一些背景信息:我要清除的列是“ LOCATION”,其中包含描述地址的字符串。
for i in data.index:
data.at[i, "LOCATION"] = data.at[i, "LOCATION"].split()
data.at[i, "LOCATION"] = " ".join(data.at[i, "LOCATION"])
示例行(未清除)'15300 ________ SATICOY______________ST' * _代表空格
使用split()['15300','SATICOY','ST']后说行
加入'1 5 3 0 0 S A T I C O Y S T'后
在我真正想要将字符串重新连接在一起之前,代码可以正常工作。我的目标是加入由空格分隔的字符串,因此“ 15300 SATICOY ST”。
感谢您的帮助!
答案 0 :(得分:2)
无需在此处循环,请将Series.str.replace
与regex
表达式\s+
一起使用(1个或多个空格字符)。将此内容替换为1个空格:
data['LOCATION'] = data['LOCATION'].str.replace('\s+', ' ')
答案 1 :(得分:2)
简单- 做
data["LOCATION"]=data["LOCATION"].str.strip(" ") # this will remove all the trailing and leading spaces
data["LOCATION"]=data["LOCATION"].str.replace('\s+', ' ') #this will remove all the extra spaces.