Импорт временных рядов через цикл (пот. Универсальный)

Решенный, сейчас рабочий пример!

У меня есть набор временных рядов, который заполняется в структуре папок следующим образом:

TimeSeriesData\Config_000000\seed_001\Aggregate_Quantity.txt
…
TimeSeriesData\Config_000058\seed_010\Aggregate_Quantity.txt

И в каждом файле есть первая строка, содержащая символ, а затем строки, содержащие данные. Например

share
-21.75
-20.75
…

Теперь я хотел бы импортировать все эти файлы (в лучшем случае, без указания ex post количества конфигов и семян, в худшем случае с его предоставлением) в один временной ряд, например: "AggQuant_config_seed", где config относится к идентификатору конфигурации и семя идентификатору семени.

Я попробовал следующее (используя не предпочтительный способ), но "синтаксический анализ" "пути" не работает / я не знаю, как это сделать.

string base = "TimeSeriesData/Config_"
string middle = "/seed_"
string endd = "/Aggregate_Quantity.txt"
string path = ""
loop for (i=0;i<=58;i+=1)
    loop for (j=1;j<=10;j+=1)
        path = ""
        sprintf path "%s%06d%s%03d%s",base,i,middle,j,endd
        append @path #will be named share
        rename share Agg_Q_$i_$j #rename
    endloop
endloop 

Чтобы подвести итог проблемы, не работает следующее:

string path="somwhere/a_file.txt" #string holding path
#wrong: append $path #use append on string
append @path #works!

И, если возможно, был бы полезен способ рекурсивного поиска по набору папок с использованием информации о папке вместе с информацией о файле для имени переменной. Это возможно в течение gretl?

Я понимаю, что во многих случаях я хотел бы сослаться на определенный раздел "справки", например, для функций и команд, но вместо этого для операторов (например, "$", что здесь явно неверно).

0 ответов

Другие вопросы по тегам