python - 如何重新分配与列表匹配的系列中的值
问题描述
我有一系列需要重命名的各种名称。需要更改的值包含在列表中。
change_list = ['b', 'c']
new_name = 'x'
df = pd.DataFrame([
{'sp': 'a'},
{'sp': 'b'},
{'sp': 'c'},
{'sp': 'b'},
{'sp': 'c'}])
df[df['sp'].isin(change_list)]['sp'] = new_name
结果应该是新名称分配给与列表匹配的每个“sp”值的数据框。
解决方案
只需删除['sp']
:)
change_list = ['b', 'c']
new_name = 'x'
df = pd.DataFrame([
{'sp': 'a'},
{'sp': 'b'},
{'sp': 'c'},
{'sp': 'b'},
{'sp': 'c'}])
df[df['sp'].isin(change_list)] = new_name
推荐阅读
- python - 使用 python-requests 从 DHL 获取跟踪详细信息
- r - 如何通过 R 中的 quasiquotation 更改 tibble 的单元格
- gradle - 获取所有配置的所有依赖路径
- html - 选择前一个下拉菜单中的某个选项时,取消隐藏下拉菜单(或任何 HTML 元素)的纯 CSS 方式
- python - 在elasticsearch中通过聚合查询前N个类别
- c# - 使用 C# 执行操作根据特定值从 SQL 中选择数据
- javascript - 将标签渲染到 Jade
- c# - C#中从字节数组到字节数组的对称加密,没有流
- python-3.x - 如何使用python中的字典将数字替换为字母
- arrays - 一个简单的哈希数组循环,即使它有效,我也会收到错误警告,这是为什么呢?