R: Расширение скобок в Sys.glob () - PullRequest
0 голосов
/ 22 июня 2010

Можно ли использовать функцию R's Sys.glob () для расширения скобок?Я имею в виду шаблон, похожий на /home/foo/ndoma,b‹/bar.txt, который должен найти файлы /home/foo/a/bar.txt и /home/foo/b/bar.txt, если они оба существуют,По умолчанию R не расширяет фигурные скобки.

Расширение фигурных скобок возможно в glob (3) с флагом GLOB_BRACE.Я предполагаю, что R просто вызывает glob (3) под обложками, так что я надеюсь, что есть какой-то способ, но я не могу найти правильный вызов ...

Ответы [ 2 ]

1 голос
/ 22 июня 2010

Я только что упомянул, что вы также можете использовать system (с параметром intern, установленным в TRUE) и вызывать любую системную команду, которую вы хотите использовать, если она не отображается непосредственно в Sys.*() в R. Например это просто вызывает ls для CSV-файлов:

x <- system("ls *.csv", intern=TRUE)
0 голосов
/ 22 июня 2010

Звучит полезно.

Фактическая работа выполняется подпрограммой do_glob() в файле src/main/sysutils.c в источниках R - может быть, вы можете начать там с работы над патчем?

GLOB_MARK уже добавлен условно (при наличии), так что, может быть, вы можете затенить эту работу?

...