开发者社区> 问答> 正文

根据条件(包含字符串)替换panda DataFrame列中的值

我目前正在处理熊猫数据集(美国初创公司),并试图通过关键字聚合行业。换句话说,我需要遍历一个列,如果一个值包含一个给定的字符串,就用一个新字符串替换整个值。 “如果”已经尝试了一些简单的“如果”语句循环,但似乎不能得到正确的语法。我还尝试了一些.loc,但似乎只能用一个字符串替换列中的所有值。 谢谢! 问题来源StackOverflow 地址:/questions/59382924/replace-value-in-pandas-dataframe-column-based-on-a-condition-contains-a-strin

展开
收起
kun坤 2019-12-27 16:57:31 1187 0
1 条回答
写回答
取消 提交回答
  • 一种简单的方法是将扇区到扇区类别的映射存储为字典,然后应用一个调用该映射的函数。

    import pandas as pd
    
    data = pd.DataFrame(["chunky spam", "watery spam", "hard-boiled", "scrambled"])
    
    def mapping(sector):
        mapping_dict = {"chunky spam": "spam", 
                        "watery spam": "spam", 
                        "hard-boiled": "eggs", 
                        "scrambled": "eggs"}
    
        return mapping_dict[sector]
    
    data[0].apply(mapping)
    
    2019-12-27 16:57:37
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载