Я изо всех сил пытаюсь использовать некоторые параметры командной строки, которые я передаю в R Script. Мой файл сценарий выглядит, как показано ниже:Работа с параметрами командной строки R - столбцы кадра данных
library(dplyr)
args <- commandArgs(trailingOnly = TRUE)
grpd_by_variable<-get(args[1])%>%
group_by(args[2])%>%
mutate(DAY_GRPD_TOTAL=n())%>%
filter(row_number()==1)
print(nrow(grpd_by_variable))
Моего командная строка утверждение, как показано ниже:
RScript filename.R my_data_frame col1
Здесь my_data_frame
является кадром данных Я хочу, чтобы работать и затем выполнить некоторые группировки, используя dplyr пакета. col1
- это имя столбца в моем кадре данных. Когда я запускаю этот оператор командной строки, оператор print выводит только 1 как вывод, что означает только одну строку. Однако, когда я сам подставляю переменные и запускаю скрипт, как показано ниже, он печатает значение 7, соответствующее семи дням недели.
grpd_by_variable<-get(my_data_frame)%>%
group_by(col1)%>%
mutate(DAY_GRPD_TOTAL=n())%>%
filter(row_number()==1)
print(nrow(grpd_by_variable))
Я считаю, что его делают с group_by (арг [2 [), где его не в состоянии понять арг [2] правильно. Может кто-нибудь, пожалуйста, дайте мне знать, как ссылаться на имена столбцов фрейма в скрипте, которые передаются в качестве параметров командной строки?
Я пробовал group_by(args[2])
, group_by(as.name(args[2]))
, group_by(as.character(args[2]))
и group_by(get(args[2]))
. Но до сих пор мне не повезло. Поскольку я новичок в R, я не мог понять это точно, но выглядит его тривиальной проблемой.
Спасибо @ zx8754. используя group_by_. Большое спасибо за вашу своевременную помощь! Отмечая это как ответ. – greenhorntechie