Calcule la media de una columna a partir de varios archivos CSV en R

Soy nuevo en R. Tengo más de 300 archivos CSV en una carpeta (llamada 001.csv, 002.csv, etc.). Cada uno contiene un marco de datos con un encabezado. Estoy escribiendo una función que tomará tres argumentos: la ubicación de los archivos, el nombre de la columna que desea calcular la media (dentro de los marcos de datos) y los archivos que desea usar en el cálculo.

Aquí está mi función:

pollutantmean2 <- function(directory = getwd(), pollutant, id = 1:332) {

    # add one or two zeros to ID so that they match the CSV file names
    filenames <- sprintf("%03d.csv", id)

    # path to specdata folder
    # if no path is provided, default is working directory
    filedir <- file.path(directory, filenames)

    # get the data from selected ID or IDs from the specified path
    dataset <- read.csv(filedir, header = TRUE)

    # calculate mean removing all NAs
    polmean <- mean(dataset$pollutant, na.rm = TRUE)

    # return mean
    polmean

}

Parece que hay dos cosas mal con mi código. Para desglosarlo, separé la función en dos funciones separadas para manejar las dos tareas: 1) obtener los archivos requeridos y 2) calcular la media de la columna deseada (también conocido comopollutant)

1) Obtener los archivos apropiados: funciona siempre que solo quiera un archivo. Si selecciono un rango de archivos, como1:25&nbsp;Recibo un mensaje de error que diceError in file(file, "rt") : invalid 'description' argument. Busqué en Google este error pero aún no tengo idea de cómo solucionarlo.

# function that gets csv files and stores them
getfile <- function(directory = getwd(), id) {
    filenames <- sprintf("%03d.csv", id)
    filedir <- file.path(directory, filenames)
    dataset <- read.csv(filedir, header = TRUE)
    dataset
}

Si corrogetfile("specdata", 1)&nbsp;funciona bien, pero si corrogetfile("specdata", 1:10)&nbsp;Obtuve el siguiente error:Error in file(file, "rt") : invalid 'description' argument.

2) Cálculo de la media de una columna con nombre especificada: suponiendo que tengo un marco de datos utilizable, trato de calcular la media con la siguiente función:

calcMean <- function(dataset, pollutant) {
    polmean <- mean(dataset$pollutant, na.rm = TRUE)
    polmean
}

Pero si corrocalcMean(mydata, "sulfate")&nbsp;(dóndemydata&nbsp;es un marco de datos que cargué manualmente) Recibo un mensaje de error:Warning message: In mean.default(dataset$pollutant, na.rm = TRUE) : argument is not numeric or logical: returning NA

Lo extraño es que si corromean(mydata$sulfate, na.rm = TRUE)&nbsp;en la consola, funciona bien.

Apreciaré cualquier ayuda que me guíe en la dirección correcta. He investigado esto durante varios días y después de un sinfín de ajustes, me he quedado sin idea.