FileExistsError when saving data to existing directory outside current path
I've encountered an issue with the save() method in the DataDict class, where it fails to properly handle saving data to a directory outside the current working directory. The result is FileExistsError because the folder data already exists one level above the program file location. Here is the code that caused the error:
results.save(exp_name='firm_dynamics', path=os.path.join('..','data'))
Looking into the .save() method, I believe the problematic code snippet is as follows:
# Create output directory if it doesn't exist
if path not in os.listdir():
os.makedirs(path)
This logic checks if the path is in the current directory's listing (os.listdir()), leading to a FileExistsError when attempting to save data to an existing directory located outside the current directory, e.g., path='../
if not os.path.exists(path):
os.makedirs(path)