Я хотел бы прочитать несколько входных файлов из папки, выполнить некоторые преобразования, создать папки на лету и записать CSV-файл в соответствующие папки. Дело в том, что у меня есть входной путь, который похож на
«Входные файлы \ P1_set1 \ Set1_Folder_1_File_1_Hour09.csv» - для одного пациента (этот файл содержит показания пациента (P1) в 9-й час)
Аналогично, существует несколько файлов для каждого пациента, и файлы каждого пациента сгруппированы в каждой папке, как показано ниже
Итак, для чтения каждого файла я использую регулярное выражение с подстановочными знаками, как показано ниже в коде
Я уже пробовал использовать пакет glob и могу успешно его прочитать, но столкнулся с проблемой при создании папок вывода и сохранении файлов. Я анализирую строку файла, как показано ниже
f = "Входные файлы \ P1_set1 \ Set1_Folder_1_File_1_Hour09.csv"
f [12:] = "P1_set1 \ Set1_Folder_1_File_1_Hour09.csv"
filenames = sorted(glob.glob('Input files\P*_set1\*.csv'))
for f in filenames:
print(f) #This will print the full path
print(f[12:]) # This print the folder structure along with filename
df_transform = pd.read_csv(f)
df_transform = df_transform.drop(['Format 10','Time','Hour'],axis=1)
df_transform.to_csv("Output\" + str(f[12:]),index=False)
Я ожидаю, что в выходной папке будут файлы csv, сгруппированные по каждому пациенту в соответствующие папки. На приведенном ниже снимке экрана показано, как преобразованные файлы должны быть расположены в выходной папке (такая же структура, как входная папка). Обратите внимание, что папка «Output» уже существует (легко создать одну папку, которую вы знаете)