[英]How do I read a csv file in a seperate parent folder?
我有一个包含以下子目录的目录
|---Data
|
|---Notebooks
Data
目录包含 csv 文件,而Notebooks
目录包含我的 Jupyter 笔记本文件。 如何使用Notebooks
目录中的笔记本从Data
目录访问文件?
我最初的想法是这样的:
df = pd.read_csv('../Data/csvFile')
但是,代码块在 Pandas 中呈现file not found
错误。
您需要的路径将与您正常运行 Python 进程的目录相关,但您可以使用以下技巧使其相对于您正在运行的文件:
from pathlib import Path
df = pd.read_csv(Path(__file__).parent/'Data'/'csvFile')
但是__file__
变量没有在 Jupyter 笔记本中定义,因此您必须使用此 hack 来获取笔记本所在的目录:
from pathlib import Path
df = pd.read_csv(Path(globals()['_dh'][0])/'Data'/'csvFile')
请注意,此 hack 仅在从 Jupyter 运行时有效。 不幸的是,我没有一刀切的方法,除非您计算检测您是否在 Jupyter 中,然后根据此选择您将使用的方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.