使用 pandas 打开 csv 文件,其中相对路径来自另一个路径中的另一个主文件
Opening a csv file with pandas with relative path from another main file in another path
我的问题与link中的问题类似,但略有不同
项目结构是
project_folder
--> main.py
--> scripts_folder
--> script.py
--> data_folder
--> data.csv
main.py 看起来像这样
from scripts_folder.script import a
a()
script.py 看起来像这样
import pandas as pd
df = pd.read_csv('../data_folder/data.csv')
# do some things with df
def a():
print('something')
我是运行main.py
,调用script.py
,需要从data.csv
导入数据。
我尝试了上面问题中给出的方法。即我尝试在 scripty.py
pd.reac_csv('../data_folder/data.csv')
中使用这行代码进行导入,但它不起作用。
它给我错误
handle = open(
FileNotFoundError: [Errno 2] No such file or directory: '../data_folder/data.csv'
[编辑]
我尝试将 data.csv
移动到 scripts_folder
中,如
project_folder
--> main.py
--> scripts_folder
--> script.py
--> data.csv
--> data_folder (empty)
我将其更改为 df = pd.read_csv('data.csv')
但我仍然遇到相同的错误
handle = open(
FileNotFoundError: [Errno 2] No such file or directory: 'data.csv'
有人可以帮忙吗?谢谢
handle = open(
FileNotFoundError: [Errno 2] No such file or directory: '../data_folder/data.csv'
这表明它应该在 scripts_folder
内工作。
../data_folder
表示获取相对于当前的目录,并在此目录中找到data_folder
。
您可以使用 os.path.abspath
和 os.path.join
为 csv-file
构造绝对文件路径,并将其提供给脚本读取数据。
要调试脚本的当前工作目录,请使用 os.getcwd()
我的问题与link中的问题类似,但略有不同
项目结构是
project_folder
--> main.py
--> scripts_folder
--> script.py
--> data_folder
--> data.csv
main.py 看起来像这样
from scripts_folder.script import a
a()
script.py 看起来像这样
import pandas as pd
df = pd.read_csv('../data_folder/data.csv')
# do some things with df
def a():
print('something')
我是运行main.py
,调用script.py
,需要从data.csv
导入数据。
我尝试了上面问题中给出的方法。即我尝试在 scripty.py
pd.reac_csv('../data_folder/data.csv')
中使用这行代码进行导入,但它不起作用。
它给我错误
handle = open(
FileNotFoundError: [Errno 2] No such file or directory: '../data_folder/data.csv'
[编辑]
我尝试将 data.csv
移动到 scripts_folder
中,如
project_folder
--> main.py
--> scripts_folder
--> script.py
--> data.csv
--> data_folder (empty)
我将其更改为 df = pd.read_csv('data.csv')
但我仍然遇到相同的错误
handle = open(
FileNotFoundError: [Errno 2] No such file or directory: 'data.csv'
有人可以帮忙吗?谢谢
handle = open(
FileNotFoundError: [Errno 2] No such file or directory: '../data_folder/data.csv'
这表明它应该在 scripts_folder
内工作。
../data_folder
表示获取相对于当前的目录,并在此目录中找到data_folder
。
您可以使用 os.path.abspath
和 os.path.join
为 csv-file
构造绝对文件路径,并将其提供给脚本读取数据。
要调试脚本的当前工作目录,请使用 os.getcwd()