pandas 替换

博客推荐了一个链接,链接为https://www.jianshu.com/p/2557a805211f ,但未提及链接具体内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

### Pandas替换数据框或系列中的值 在Pandas中,有多种方式可以实现数据框或系列中特定值的替换。对于数值型数据而言,如果希望将特殊标记(如 `-999`)转换成缺失值 `NaN`,以便后续利用Pandas内置功能处理这些位置上的空白,那么可以通过调用 `.replace()` 函数完成此操作[^1]。 ```python import pandas as pd import numpy as np # 构建示例 DataFrame df_example = pd.DataFrame({ 'A': [-999, 2, -999], 'B': [5, -999, 7] }) # 执行 replace 操作 df_replaced = df_example.replace(-999, np.nan) print(df_replaced) ``` 除了上述针对固定值的替换外,在面对更复杂的模式匹配需求时——例如字符串类型的字段内含有某些关键词需统一更改,则可借助于`.str.replace(old_pattern, new_value)`接口来达成目的[^3]: ```python data_text = {'text': ['hello world', 'foo bar', 'hello there']} df_text = pd.DataFrame(data_text) # 字符串替换 "hello" -> "hi" df_text['text'] = df_text['text'].str.replace('hello', 'hi') print(df_text) ``` 当涉及到批量更新多个不同旧值到新值的情况之下,还可以传递字典给`.replace()`函数作为参数,以此指定每一对映射关系;亦或是传入列表形式表示要被相同目标所取代的一组源值。 ```python mapping_dict = {1:'one', 2:'two'} list_to_replace = [-999] # 使用字典进行多值替换 df_mapped = df_example.replace(mapping_dict) # 或者使用列表对一组值做同一替换 df_list_replaced = df_example.replace(list_to_replace, value=np.nan) print(df_mapped) print(df_list_replaced) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值