gpt4 book ai didi

python - 将pandas中的一列拆分为多列

转载 作者:行者123 更新时间:2023-12-01 08:47:17 27 4
gpt4 key购买 nike

我有一个包含完整地址的列“Nome_propriedade”,例如机构名称、街道、社区、城市和州

它总是以城市和州名结尾。使用这种模式:

Nome_propriedade
"Rod. BR 386, bairro Olarias/Conventos, Lajeado/RS"
"Fazenda da Várzea - zona rural, Serro/MG"
"Cidade do Rock - Jacarepaguá, Rio de Janeiro/RJ"
"Área de extração de carnaúba - Povoado Areal, zona rural, Santa Cruz do Piauí/PI"
"Pastelaria - Av. Vicente de Carvalho, 995, Loja Q, Vila da Penha, Rio de Janeiro/RJ"

我想创建两个新列,“city”和“state”,并用“Nome_propriedade”列中的最后一个值填充它们。我也想把这些从 Nome_propiedade 中剔除。

                           Nome_propriedade                 City State
Rod. BR 386, bairro Olarias/Conventos Lajeado RS
Fazenda da Várzea - zona rural Serro MG
Cidade do Rock - Jacarepaguá... Rio de Janeiro RJ
Área de extração de carnaúba - Povoado A... Santa Cruz do Piauí PI
Pastelaria - Av. Vicente de Carvalho, 99... Rio de Janeiro RJ

请问有人知道如何创建这两列吗?

我无法进行一般拆分,因为我只想将城市和州信息分开。其他信息可能保持不变。

最佳答案

你怎么看:

import pandas as pd
propiedades = ["Rod. BR 386, bairro Olarias/Conventos, Lajeado/RS",
"Fazenda da Várzea - zona rural, Serro/MG",
"Cidade do Rock - Jacarepaguá, Rio de Janeiro/RJ",
"Área de extração de carnaúba - Povoado Areal, zona rural, Santa Cruz do Piauí/PI",
"Pastelaria - Av. Vicente de Carvalho, 995, Loja Q, Vila da Penha, Rio de Janeiro/RJ"]
df = pd.DataFrame({"Nome_propriedade":propiedades})

df[["City", "State"]] = df["Nome_propriedade"].apply(lambda x :x.split(",")[-1]).str.split("/",
expand=True)

更新如果你想从 Nome_propriedade 中删除这些信息,你可以添加这一行

df["Nome_propriedade"] = df["Nome_propriedade"].apply(lambda x :",".join(x.split(",")[:-1]))

关于python - 将pandas中的一列拆分为多列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50844379/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com