为什么'df.str.split(',',expand = True)'不起作用?

时间:2019-11-16 05:17:37

标签: python pandas split

我只是想使用df.str.split(',')将地理数据分为纬度和经度数据。
但似乎不起作用。
数据类型如下:
location

我这样处理:

data['location'] = data['location'].astype(str) 
data['location'].str.split(',' ,expand=True)

然后我在下面看到了一些东西,processed

真的很困惑,为什么split函数无法检测到','并将'location'分为两列。

3 个答案:

答案 0 :(得分:0)

看起来那里有空间,所以使用它应该可以:

data['location'].str.split(', ' ,expand=True)

如果您想使用另一种仅使用浮点数而不考虑分隔符的方法,请尝试:

data.apply(lambda x: re.findall('[0-9.]+',x['location']), axis=1, result_type='expand')

df['lon'],df['lat'] = data['location'].str.findall('[0-9.]+')

答案 1 :(得分:0)

data['location'] = data['location'].astype(str) 

data[['lat','long']]=df['location'].str.split(',' ,expand=True)

如果要将一列分为两列,则需要像我上面所做的那样初始化两列。

答案 2 :(得分:0)

    data['location'] = data['location'].astype(str) 

    data[['latitude','longitude']] = data['location'].str.split(',',expand=True)

您的情况可能是逗号后的空格。