python - 将 series.map 与多键字典一起使用
问题描述
我有一个带有 3 个键的 Python 字典,它是使用以下代码创建的。字典非常大 - 大约 100,000 行。
t1=list(zip(df.Col1, df.Col2,df.Col3))
d_dict= dict(list(zip(t1,df.Col4)))
我现在有一个单独的数据框,它也非常大,有 3 列与字典键匹配。我想将 series.map(d_dict) 应用于此以优化一些代码。我怎样才能做到这一点?
我目前正在使用以下代码,该代码在 nan 上有错误并且需要很长时间
s1 = df2.apply(lambda x: d_dict[x.Col1,x.Col2,x.Col3], axis=1)
s1= df2.map(d_dict)
是我要寻找的那种代码
解决方案
我通过将 3 个键转换为文本“1,0,1”然后将我的字典设为文本“1,0,1: 2341”并使用单键使用 series.map(dict) 来解决此问题。
推荐阅读
- python - 如何仅使用 numpy(而不是 sklearn LabelEncoder)创建标签编码器?
- ui-automation - 在 HCL OneTest UI 中,Firefox 浏览器上的 WebUI 录制无法像在 Chrome 中那样工作。#hclonetestui
- java - 如何在没有(没有主要清单属性)的情况下为现有的 Maven 项目生成 jar 文件?
- c# - Blazor 服务器端应用程序日期时间默认为 01/01/0001
- android - 如何在 Flutter 中报告静默崩溃
- android - Kotlin 中的警报对话框验证
- ruby-on-rails - 使用 Ruby on Rails 访问 Google Drive API v3
- c++ - 退出,分段错误
- r - 我无法在我的 flexdashboard 上进行垂直滚动
- php - 使用 PHP 在 MongoDB 中查询数据