Bem, quando li a primeira vez pensei que você tivesse querendo a área abaixo de uma curva ajustada mas você quer a área real abaixo da "curva" que é a união dos pontos. Se for isso não precisa usar interpolações, como a approxfun(). Use a coma das áreas dos trapézios. É uma função simples de fazer mas felizmente tem uma disponível no pacote agricolae::audpc (area under disease progress curve), é só usar, veja
audpc(evaluation=as.data.frame(as.list(data$CH4A)),
dates=data$Sample, type="absolute")
Só que o cara que fez a função, não sei porque razão, precisa receber o primeiro argumento como data.frame.
À disposição.
Walmes.
==========================================================================
Walmes Marques Zeviani
LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W)
Departamento de Estatística - Universidade Federal do Paraná
fone: (+55) 41 3361 3573
VoIP: (3361 3600) 1053 1173
e-mail: walmes@ufpr.br
skype: walmeszeviani
twitter: @walmeszeviani
homepage: http://www.leg.ufpr.br/~walmes
linux user number: 531218
==========================================================================