小编NL2*_*des的帖子

在两个 pandas 数据框中查找匹配值并从匹配行返回一个值

很难以清晰和准确的方式表达这个问题,所以希望下面的内容有助于更多地阐明我的问题。

我有两个 pandas 数据框,对此示例进行了简化,它们是:

df1 = 
'CENSUS_ID'  
60014001001
60014002001

df2 = 
'GEO_ID'    'MED_INCOME'
60014001001   177417
60014002001   166313
60014002002   132400
60014003001   161964
Run Code Online (Sandbox Code Playgroud)

我想通过在 df2 中查找匹配的 GEO_ID 并返回“MED_INCOME”值,向 df1 添加一个名为“MED_INCOME”的列。虽然这些数据帧经过简化,但 df1 的实际 len 可能有数百行长,而 df2 的实际 len 则有数万行长。因此,虽然我可以轻松地将其设置为迭代以查找匹配项,但它并不理想,因为它非常慢。我想使用 pandas apply() 因为它似乎要快得多,或者也许还有另一种解决方案,但我很难弄清楚逻辑,因为我仍然有很多 pandas “技巧”新的或不知道的。也许从 df2 中删除不匹配的列比添加到 df1 更容易,但我只是不知道。任何帮助表示赞赏。

python indexing concatenation pandas

2
推荐指数
1
解决办法
2100
查看次数

运行使用 folium 的可执行文件时,Branca Python 模块无法找到 2 个基本的 json 文件

有可能这仍然是一个问题,并且 Pyinstaller 和/或 Folium 人员没有兴趣修复它,但我会在此处再次发布,以防有​​人发现了解决方法。

我有一个程序可以创建地图、地理编码等,最近添加了 folium 包来创建一些 html 格式的交互式地图。我总是使用 pyinstaller 编译我的代码,这样我公司的其他人就可以只使用可执行文件而不是运行 python 代码。如果我在 IDE 中运行我的代码,它会完全按预期加载、运行和执行。但是,当我尝试import folium在脚本中某处进行编译时,尝试运行 pyinstaller 创建的可执行文件时出现错误。

错误文本内容如下:

Traceback (most recent call last):
File "analysisSuite.py", line 58, in <module>
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
File "c:\users\natha\appdata\local\programs\python\python36-32\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 631, in exec_module
exec(bytecode, module.__dict__)
File "site-packages\folium\__init__.py", line 8, in <module>
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 955, …
Run Code Online (Sandbox Code Playgroud)

python executable exe pyinstaller folium

2
推荐指数
1
解决办法
2145
查看次数