http://fmteam.ru/filemaker-devcon-2017- ... -yazyka-r/
Обратился сейчас тоже к этому инструменту, за что автору идеи спасибо огромное
Пытаюсь сообразить универсальную формулу для серверного сценария.
Как я понимаю, файл r работает по принципу контекстного окружения: рабочей директорией считается папка, внутри которой находится исполняемый сценарий
То есть команда
png(file="plot.png", width = 600, height=600);
означает создать файл plot.png в той же директории, где и сам скрипт R находится.
И то же самое с источником данных, не нужно прописывать путь, а достаточно назвать имя файла и положить источник данных csv рядом с файлом сценария.
То есть по большому счету для выполнения сценария нужно создать некую уникальную папку,
положить в нее сценарий R, файл CSV, запустить сценарий и в этой же папке будет создан графический файл с диаграммой. Называть их можно всегда стандартно: script.R, data.csv, plot.png
Таким образом, получается, что внутри сценария делать абсолютные ссылки совершенно не нужно (равно как и передавать их в качестве аргументов).
Единственное, что нам нужно знать - это абсолютный путь к Rscript.exe и абсолютный путь к сценарию script.R (но этот-то путь мы знаем, ибо папку сами только что создали).
Поправьте, если не так.
Практика языка R
-
- Сообщения: 338
- Зарегистрирован: 11 сен 2017, 13:42
- Откуда: Санкт-Петербург
-
- Сообщения: 338
- Зарегистрирован: 11 сен 2017, 13:42
- Откуда: Санкт-Петербург
Re: Практика языка R
короче, убил почти целый день, чтобы это проверить. выяснилось следующее
1) без setwd не обойтись (мне не удалось)
2) выполнить сценарий на Windows в режиме PSOS возможно, и это радует.
сомневаюсь, что будет надежно использовать setwd. Если несколько пользователей одновременной запустят R-скрипты на сервере, хрен знает, что получится. Наверное, придется подменять названия файлов в самом теле скрипта. Но это нормально
1) без setwd не обойтись (мне не удалось)
2) выполнить сценарий на Windows в режиме PSOS возможно, и это радует.
сомневаюсь, что будет надежно использовать setwd. Если несколько пользователей одновременной запустят R-скрипты на сервере, хрен знает, что получится. Наверное, придется подменять названия файлов в самом теле скрипта. Но это нормально
Re: Практика языка R
для определения активной директории в R используется функция getwd()
для изменения активной директории setwd()
Если скрипт запускается из под FileMaker Server рекомендуется использовать папку Documents самого FileMaker (то что отдается Get(DocumentPath), тогда не придется заморачиваться с правами на папку (особенно если сервер на маке)
Я обычно передаю путь к папке Documents в скрипт R в качестве параметра, там назначаю этот путь рабочей директорией и дальше можно о путях не думать.
Как запускать R скрипт из под FileMaker Server я рассказывал нам конференции (можно через командную строку, можно через http-запрос )
Если предполагается работа нескольких пользователей одновременно, то я конечно в имена файлов вставлял бы какой-то идентификатор типа id пользователя или таймштампа
для изменения активной директории setwd()
Если скрипт запускается из под FileMaker Server рекомендуется использовать папку Documents самого FileMaker (то что отдается Get(DocumentPath), тогда не придется заморачиваться с правами на папку (особенно если сервер на маке)
Я обычно передаю путь к папке Documents в скрипт R в качестве параметра, там назначаю этот путь рабочей директорией и дальше можно о путях не думать.
Как запускать R скрипт из под FileMaker Server я рассказывал нам конференции (можно через командную строку, можно через http-запрос )
Если предполагается работа нескольких пользователей одновременно, то я конечно в имена файлов вставлял бы какой-то идентификатор типа id пользователя или таймштампа
-
- Сообщения: 338
- Зарегистрирован: 11 сен 2017, 13:42
- Откуда: Санкт-Петербург
Re: Практика языка R
Наткнулся вот на такой бесплатный (смею надеяться) видеокурс по языку R на русском языке
Там самые-самые основы, для совсем чайников. В дополнение есть видео-уроки по ggplot2
https://www.coursera.org/learn/znakomst ... a#syllabus
я, конечно, сейчас в восторге от возможностей R
Там самые-самые основы, для совсем чайников. В дополнение есть видео-уроки по ggplot2
https://www.coursera.org/learn/znakomst ... a#syllabus
я, конечно, сейчас в восторге от возможностей R