Olá colegas, fiz uma pequena função "cent" para filtrar dados centrais em um vetor, no entanto, não sei como generalizar a função para um data frame e uma matriz. Segue a função abaixo para o caso da classe vetor.

# Função semelhante ao head tail, com a diferença de pegar os dados centrais em uma amostra:
 
cent <- function(d, c)
{
  m <- length(d)/2
  res <- c(tail(head(d,m),(c/2)),head(tail(d,m),(c/2)))
  print(res)
}
 
vetor <- 1:10
cent(vetor,4)

Então, se os colegas aqui pudessem me ajudar generalizando essa função para um data frame e uma matriz agradeceria. 

Att.
André