从位置列中隔离国家/地区名称

时间:2018-11-17 08:47:54

标签: regex pandas

我在pandas df中有类似这样的数据以及其他列。 抱歉,我还没有弄清楚如何用数据框代码来表达问题。第一篇文章

位置:  - 日本东京  -美国萨克拉曼多  -墨西哥墨西哥城  -墨西哥墨西哥城  -美国科罗拉多斯普林斯  -美国纽约  -美国芝加哥

有人知道我如何从该位置中分离国家名称,并仅使用国家名称创建一个新列?

2 个答案:

答案 0 :(得分:1)

尝试一下:

In [29]: pd.DataFrame(df.Location.str.split(',',1).tolist(), columns = ['City','Country'])
Out[29]: 
               City       Country
0             Tokyo         Japan
1        Sacramento           USA
2       Mexico City        Mexico
3       Mexico City        Mexico
4  Colorado Springs           USA
5             Seoul   South Korea

答案 1 :(得分:0)

您可以在不使用任何正则表达式的情况下执行此操作-您可以找到String.indexOf(“,”)以查找分隔符在String中的位置,然后使用String.substring将String缩减为仅此部分

但是,正则表达式也可以轻松地做到这一点,但可能会更慢。