Stack Exchange
Run DeepGraphGO main program and report path error
DeepGraphGO
https://github.com/yourh/DeepGraphGO
Run the main program
Using backend: pytorch
Traceback (most recent call last):
  File "D:/Users/.../PycharmProjects/deepgrago210721/main.py", line 92, in <module>
    main()
  File "D:\Users\...\PycharmProjects\deepgrago210721\venv\lib\site-packages\click\core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "D:\Users\...\PycharmProjects\deepgrago210721\venv\lib\site-packages\click\core.py", line 782, in main
    rv = self.invoke(ctx)
  File "D:\Users\...\PycharmProjects\deepgrago210721\venv\lib\site-packages\click\core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "D:\Users\...\PycharmProjects\deepgrago210721\venv\lib\site-packages\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "D:/Users/.../PycharmProjects/deepgrago210721/main.py", line 31, in main
    data_cnf, model_cnf = yaml.load(Path(data_cnf)), yaml.load(Path(model_cnf))
  File "D:\Users\...\AppData\Local\Programs\Python\Python38\lib\pathlib.py", line 1038, in __new__
    self = cls._from_parts(args, init=False)
  File "D:\Users\...\AppData\Local\Programs\Python\Python38\lib\pathlib.py", line 679, in _from_parts
    drv, root, parts = self._parse_args(args)
  File "D:\Users\...\AppData\Local\Programs\Python\Python38\lib\pathlib.py", line 663, in _parse_args
    a = os.fspath(a)
TypeError: expected str, bytes or os.PathLike object, not NoneType

Ask for help,I failed to find the reason. Is it because of the data storage location?

Did you pass the Path of dataset configure yaml and Path of model configure yaml when you ran the main file as -d and -m?

You mean this File "D:/Users/.../PycharmProjects/deepgrago210721/main.py", line 31, in main     data_cnf, model_cnf = yaml.load(Path(data_cnf)), yaml.load(Path(model_cnf))?I'm a novice. I don't know much here

how did you run main.py? what are the arguments you passed?

The steps to run the DeepGraphGO: graph neural network for large-scale, multispecies protein function prediction
step 1:
Clone/Download the repo
pip install -r requirements.txt
pip install dtrx

step 2:
Extract Data folder
cd ./data
dtrx -f data.zip

step 3:
Run the preprocessing script
python preprocessing.py data/ppi_mat.npz data/ppi_dgl_top_100

Run the main function with different model-id with biological process ontology domain, for molecular function ontology and cellular component ontology domains replace the yaml files in -d with configure/mf.yaml and configure/cc.yaml respectively
python main.py -m configure/dgg.yaml -d configure/bp.yaml --model-id 0
python main.py -m configure/dgg.yaml -d configure/bp.yaml --model-id 1
python main.py -m configure/dgg.yaml -d configure/bp.yaml --model-id 2

Run the evaluation script for BP domain
python bagging.py -m configure/dgg.yaml -d configure/bp.yaml -n 3
python evaluation.py data/bp_test_go.txt results/DeepGraphGO-Ensemble-bp-test.txt


Thank you very much, but I run the project in pycharm under windows. What should I do to extract the data in the second step? I think there may be something wrong with my step

Extract the contents of the data.zip in the same directory using any unzipping software

but step 3: Run the preprocessing script run after:```  File "preprocessing.py", line 34
ppi_net_mat = (mat_:=ssp.load_npz(ppi_net_mat_path)) + ssp.eye(mat_.shape[0], format='csr')
^
SyntaxError: invalid syntax


use python 3.8 or greater

That's what I use Requirements
python==3.8.3 I really don't know what's wrong


can you confirm ppi_mat.npz file in your /data directory?
