Я пишу функцию в R, которая принимает data.frame или путь к файлу, что приводит к csv, который будет считываться как data.frame.
У меня сейчас есть это:
occInput <- function(fileInput, dfInput = NA) {
if (is.na(dfInput)) occ.dat <- read.csv(file = fileInput)
else occ.dat <- dfInput
#manipulate the data in occ.dat
}
Однако, когда я фактически передаю data.frame в качестве параметра dfInput
, он выдает предупреждение:
Предупреждение в if (is.na(dfInput)) occ.dat <- read.csv(file = fileInput)
else occ.dat <- dfInput
: условие имеет длину> 1 и только
будет использован первый элемент
Хотя это на самом деле не оказывает негативного влияния на мой код, это уродливо, и оно подсказывает мне, что существует более элегантный способ иметь или / или необязательные аргументы в функции.
Есть предложения? Мне кажется, я упускаю из виду нечто очевидное.