我有一列“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:按分组分组,平均? - python我有一个像这样的数据框:cluster org time 1 a 8 1 a 6 2 h 34 1 c 23 2 d 74 3 w 6 我想计算每个集群每个组织的平均时间。预期结果:cluster mean(time) 1 15 ((8+6)/2+23)/2 2 54 (74+34)/2 3 6 我不知道如何在熊猫中做到这一点,有人可以帮忙吗? 参考方案 如…
重命名默认ID python - python我想连接两个dataFrames,但是两个数据具有不同的ID,所以结果是错误的这是我的代码data=pd.DataFrame(df.columns) data1=data.drop(axis=1,index=[0,1,2,3]).transpose() data1 这是dataframe1另一个数据框:y=sma_algo(df.loc['H+L&…
Python Pandas:在多列上建立布尔索引 - python尽管至少有关于如何在Python的pandas库中为DataFrame编制索引的two good教程,但我仍然无法在一个以上的列上找到一种优雅的SELECT编码方式。>>> d = pd.DataFrame({'x':[1, 2, 3, 4, 5], 'y':[4, 5, 6, 7, 8]}) >…
pandas DataFrame:根据另一列中的布尔值计算总和 - python我对Python相当陌生,我尝试在pandas中模拟以下逻辑我目前正在循环抛出行,并希望对前几行的AMOUNT列中的值求和,但只求和最后一次看到的“ TRUE”值。实际数据似乎效率低下(我的数据框大约有500万行)?想知道用Python处理这种逻辑的有效方法是什么?逻辑:逻辑是,如果FLAG为TRUE,我想对前几行的AMOUNT列中的值求和,但只求和最后一次…
替换pandas数据框中的值会使内核崩溃 - python我有一个包含10列整数的数据框:site1 site2 site3 ... site10 55 56 198 ... 340 10 101 200 ... 900 ... 1 1090 500 ... 300 我有字典来替换其中一些值:dict = { "55" : "198" .... } 当我做:df.replac…