python - 如何使用apply函数和lambda循环遍历python中的json对象?
问题描述
我有这个 json 对象 name_lookup,如下所示:
[
{
"ID": "70B52DA6-F099-4D01-BBD0-03EA97292C26",
"Name": "Join"
},
{
"ID": "442B1598-20CF-4425-8A28-0438FBF77C46",
"Name": "Bob"
}
]
我的数据框(df)具有结构:
Id Name
Join
Bob
如何遍历上面的 Json 对象并比较名称以在 df 中填写 id?
我使用这个函数来加载 json 文件:
def read_configs(file_name):
with open(file_name, "r", encoding='utf-8') as read_file:
lookup = json.load(read_file)
return lookup
请帮我。非常感谢您的帮助<3
解决方案
假设名称是唯一的,则可以使用map
Pandas 的功能:
import pandas as pd
lookup = [
{
"ID": "70B52DA6-F099-4D01-BBD0-03EA97292C26",
"Name": "Join"
},
{
"ID": "442B1598-20CF-4425-8A28-0438FBF77C46",
"Name": "Bob"
}
]
df = pd.DataFrame([[None, "Join"], [None, "Bob"]], columns=["ID", "Name"])
# Convert the list of entities to a dictionary and map names by it
df["ID"] = df["Name"].map({entity["Name"]: entity["ID"] for entity in lookup})
推荐阅读
- excel - 在 Excel 数据透视表中按条件筛选
- java - 我们如何使用 try-catch 处理 Java ConcurrentModificationException?
- msbuild - 在 MsBuild PostBuildEvent 中使用自定义属性
- java - 将枚举映射到名称的符合声纳的方法
- python - Pandas 正在从具有值的 excel 中返回空数据框
- html - 这个简单的 CSS 和 html 国际象棋布局有什么问题?(短代码)
- python - 如何让 tensorflow keras 使用我的 GPU?
- windows - 替换 Windows 文件名中的 URL 字符编码(批处理)
- reactjs - 如何在 React JS Full Calender 中显示从今天开始的当前月份日历
- microsoft-edge - 在合作伙伴中心提交 Microsoft Edge 扩展时生成的公钥如何使用?