来源:
@dataclass
class DataIngestionConfig:
train_data_path:str = os.path.join("artifacts/train_data")
test_data_path:str = os.path.join("artifacts/test_data")
raw_data_path:str = os.path.join('artifacts','raw.csv')
# permission denied on this address ^
class DataIngestionPhase:
def __init__(self):
self.dataIngestionConfig = DataIngestionConfig
def dataIngestion(self):
mlflow_logs = Mlflow_logs()
with mlflow.start_run():
logging.info("Data Ingestion Phase Start")
mlflow_logs.log_msg("Data Ingestion Phase Start")
try:
df = pd.read_csv("notebooks/data/Dataset.csv")
os.makedirs(os.path.join(self.dataIngestionConfig.raw_data_path), exist_ok=True)
df.to_csv(self.dataIngestionConfig.raw_data_path, index=False)
except Exception as e:
mlflow_logs.log_msg(f"Exception : {e}")
raise CustomException(e,sys)
输出:
[Errno 13] Permission denied: 'artifacts\\raw.csv']
我尝试读取 csv 文件,然后将其作为 raw.csv 存储到 artifacts 文件夹内的新 csv 文件中。文件夹权限已被授予,但我收到此错误。
在
os.makedirs
中,您将在 'raw.csv'
中创建一个名为
'artifacts'
的文件夹
raw_folder_path = 'artifacts'
os.makedirs(raw_folder_path, exist_ok=True)
df.to_csv(os.path.join(raw_folder_path, 'raw.csv'), index=False)