gpt4 book ai didi

python - 名称错误 : name 'pd' is not defined when calling a function in custom package

转载 作者:行者123 更新时间:2023-12-05 02:13:41 28 4
gpt4 key购买 nike

上下文

我正在学习用于数据科学的 Python,并且我正在使用 Foursquare API 探索坐标附近的场所。它返回一个 JSON 文件,因此我创建了一个函数,使用“foursquare”包 (github.com/mLewisLogic/foursquare) 从 Foursquare 结果返回 Pandas DataFrame,然后将数据提取附加到 DataFrame。

该功能在我的 Jupyter Notebook 中有效(您可以在此处查看该功能 https://github.com/dacog/foursquare_api_tools/blob/master/foursquare_api_tools/foursquare_api_tools.py ),我考虑让其他人更容易使用并尝试创建一个可以直接从 github 使用 pip 安装的包。我成功创建了一个包并将其发布到 github 进行测试,但是当我尝试使用它返回的函数时

NameError: name 'pd' is not defined

试用包的步骤

!pip install git+https://github.com/dacog/foursquare_api_tools.git#egg=foursquare_api_tools

# @hidden_cell
CLIENT_ID = 'Secret' # your Foursquare ID
CLIENT_SECRET = 'Secret' # your Foursquare Secret
VERSION = '20180605' # Foursquare API version

from foursquare_api_tools import foursquare_api_tools as ft

ft.venues_explore(client,lat='40.7233',lng='-74.0030',limit=100)

我明白了

NameError                                 Traceback (most recent call last)
<ipython-input-47-0a062ed9d667> in <module>()
3 import pandas as pd
4
----> 5 ft.venues_explore(client,lat='40.7233',lng='-74.0030',limit=100)

/opt/conda/envs/DSX-Python35/lib/python3.5/site-packages/foursquare_api_tools/foursquare_api_tools.py in venues_explore(client, lat, lng, limit)
3 This returns a pandas dataframe with name, city ,country, lat, long, postal code, address and main category as columns'''
4 # creata a dataframe
----> 5 df_a = pd.DataFrame(columns=['Name', 'City', 'Latitude','Longitude','Category','Postal Code', 'Address'])
6 ll=lat+','+lng
7 #get venues using client https://github.com/mLewisLogic/foursquare

NameError: name 'pd' is not defined

我在主笔记本中尝试了 import pandas as pd,在函数内部,在 __init__.py 中总是得到相同的结果。

您可以在 https://github.com/dacog/foursquare_api_tools 查看代码

这是我第一次创建包,对 python 还很陌生,所以非常感谢任何帮助。

更新当我进行测试时,Pandas 在环境中运行良好。 enter image description here

已安装的 Python 版本是:

!which python --> /home/jupyterlab/conda/bin/python

!whereis python
/usr/bin/python /usr/bin/python2.7 /usr/lib/python2.7 /etc/python /etc/python2.7
/usr/local/lib/python2.7 /usr/share/python
/home/jupyterlab/conda/bin/python /home/jupyterlab/conda/bin/python3.6
/home/jupyterlab/conda/bin/python3.6-config /home/jupyterlab/conda/bin/python3.6m /home/jupyterlab/conda/bin/python3.6m-config /usr/share/man/man1/python.1.gz

最佳答案

您在 foursquare_api_tools.py 中缺少 import pandas as pd 语句。只需将该行添加到该文件的顶部,您就可以开始了。

线索在错误:NameError,在你调用pd.DataFrame的第5行,因为没有import语句,Python不知道“name"pd 的意思。

关于python - 名称错误 : name 'pd' is not defined when calling a function in custom package,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54714914/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com