python - Python 循环遍历 DataFrame 和 Dictionary
问题描述
我有一个如下所示的数据框
0 1 2
A X +2
B Y +3
C Z +1+2
还有一个看起来像下面的字典
dict = { "1":"A", "2":"B", "3":"C", }
我正在尝试循环创建以下内容(有效地从字典中查找字母并用正确的字母替换数据框中的数字,同时保留“+”s)
0 1 2
A X +B
B Y +C
C Z +A+B
任何指针将不胜感激!
解决方案
您可以使用替换:
import pandas as pd
d = {"1": "A", "2": "B", "3": "C", }
data = [['A', 'X', '+2'],
['B', 'Y', '+3'],
['C', 'Z', '+1+2']]
df = pd.DataFrame(data=data)
df[2] = df[2].str.replace('\d+', lambda x: d[x.group()])
print(df)
输出
0 1 2
0 A X +B
1 B Y +C
2 C Z +A+B
推荐阅读
- python - 带有 SQLITE3 的 Python 3 - 选择字段时出现“SyntaxError:无效语法”
- php - 尝试创建一个点击图片进行考勤的考勤系统。
- deep-learning - 通过 Keras 中的残差跳过两个卷积网络
- javascript - d3.js子选择无法检索输入值文本
- python-3.x - 永久写入字典
- r - 检查字符串是否包含在 R 数据框中列表列的每个向量中
- java - 使用 @OneToMany 映射 Ebean 模型本身
- excel - 在 Excel 中,如何返回与列中最大值关联的名称?
- android - 包含 400 个文档的 Firestore 写入批处理需要几分钟才能完成
- java - 我们如何确定我们是在 EC2 还是 Fargate 中运行?