У меня есть около 2000 файлов .txt, в которых есть данные кривой света. Каждый файл .txt представляет собой различную комбинацию параметров. Есть 12 параметров с 2-3 параметрами, поэтому количество файлов настолько большое, и каждый запускает около пяти итераций. Я использую WSL, чтобы попытаться проанализировать мои файлы, чтобы получить одну комбинацию каждого параметра, так что, когда я запускаю кривые света, я могу поместить их на множественное устройство с различными комбинациями параметров для каждого набора кривых света. Мне интересно, может ли кто -нибудь придумать более простой способ проанализировать файлы, чем мой код, который заключается в следующем: < /p>
import os
import re
import shutil
import yaml
from itertools import product
#Load and flatten YAML
yaml_path = 'my path with parameters'
with open(yaml_path, 'r') as f:
raw_params = yaml.safe_load(f)
#Flatten nested YAML structure into one dict
params = {}
for section in raw_params.values():
if isinstance(section, dict):
params.update(section)
#Keys we want to track from filename
grid_keys = [
'sp', 'inclination', 'angwidth', 'p', 'vff', 'ymax', 'numclouds',
'opening_angle', 'angwidth_pol', 'p_pol', 'vff_pol', 'ymax_pol',
'cl_fraction'
]
#Make sure all grid_keys exist in YAML
missing_keys = [k for k in grid_keys if k not in params]
if missing_keys:
raise KeyError(f"The following required keys are missing from the YAML:
{missing_keys}")
#Build Cartesian product of all parameter combinations
param_values = [params[k] for k in grid_keys]
full_param_grid = [dict(zip(grid_keys, combo)) for combo in product(*param_values)]
< /code>
Раздел кривой света проще, потому что каждый файл .txt имеет список дат и список потоков, поэтому моя основная проблема заключается в файлах анализа. Я пробовал этот код, и, хотя он работает индивидуально, мне обычно приходится заходить на каждое испытание и редактировать его тонну, чтобы заставить его работать.
Подробнее здесь: https://stackoverflow.com/questions/796 ... ght-curves
Файлы parsing .txt для создания кривых света ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение