pygcn代码笔记(2)
问题二:数据加载过程出现问题
问题(错误)描述
代码:
def load_data(path='../data/cora', dataset="cora"):
"""Load citation network dataset (cora only for now)"""
print('Loading {} dataset...'.format(dataset))
运行后出现错误:
OSError: ../data/cora/cora.content not found.
错误如图示:
尝试方法
(1)改相对路径为绝对路径(未成功)
注:
"../data/cora"
表示上两层目录。
"./data/cora"
表示data这个文件的上一层目录。(也就是说train.py和data在同一个目录内,但是不是同一级别)- 参照链接:路径(讲的更清楚)
(2)修改vscode的相对路径
方法一:参考下方链接,在.vscode 目录下的 launch.json 文件,添加 "cwd": "${fileDirname}"
(点击debug train.py就能出现launch.json 文件)
修改vscode相对路径
方法二、打开右下角设置,在搜索框内搜索python dir并回车,找到python这一栏,打开,勾选上"Execute In File Dir"即可。
参考链接:对于python中“FileNotFoundError: [Errno 2] No such file or directory”的解决办法
在通过上述方法修改后,问题并没有得到解决。
(3)查看文件属性,修改权限
在参考链接Python CGIHTTPServer OSError?后,猜测可能是文件权限问题。于是我查看了cora.content以及cora.cites的属性后发现,文件属性被设置为可读了。更改文件属性后,代码成功运行。
总结
出现代码加载问题,首先要看文件权限是否存在限制,其次要关注相对路径是否使用错误,(或者可以直接使用绝对路径)。再者,如果还没解决,可以考虑设置Python运行时相对路径。