[R-br] integral de dados discretos
Luigi Cavalcanti
luigicavalcanti22 em gmail.com
Sexta Outubro 26 15:56:17 BRST 2012
Prezados colegas, tenho alguns dados de produção de metano ao longo do
tempo em intervalos de 12 minutos. Gostaria da opinião de vocês sobre a
melhor forma de integrar a área sob a curva formada. Já pesquisei algumas
coisas e acredito que usar a função integrate() sobre o vetor gerado com as
funções approxfun() ou splinefun() podem resolver o problema ao ligarem os
pontos, embora redundem em resultados diferentes e não contemplem
exatamente todos os pontos. Segue o banco de dados e as funções usadas por
mim...
Banco de dados: data
Sample CH4A
1 1 0.02492
2 2 0.02720
3 3 0.03284
4 4 0.04048
5 5 0.04256
6 6 0.04740
7 7 0.05128
8 8 0.05348
9 9 0.05292
10 10 0.05156
11 11 0.05532
12 12 0.05608
13 13 0.05152
14 14 0.05234
15 15 0.05222
16 16 0.05266
17 17 0.05600
18 18 0.05008
19 19 0.05038
20 20 0.05148
21 21 0.04850
22 22 0.04748
23 23 0.04272
24 24 0.04294
25 25 0.04132
26 26 0.03824
27 27 0.03672
28 28 0.04056
29 29 0.03592
30 30 0.03492
31 31 0.03818
32 32 0.03628
33 33 0.03492
34 34 0.03588
35 35 0.03196
36 36 0.03380
37 37 0.03456
38 38 0.03284
39 39 0.03684
40 40 0.03282
41 41 0.03116
42 42 0.03082
43 43 0.03072
44 44 0.03488
45 45 0.03490
46 46 0.03500
47 47 0.03516
48 48 0.03256
49 49 0.02988
50 50 0.03408
51 51 0.02854
52 52 0.03392
53 53 0.02844
54 54 0.03270
55 55 0.03100
56 56 0.03074
57 57 0.03080
58 58 0.02808
59 59 0.02796
60 60 0.02822
61 61 0.04016
62 62 0.03704
63 63 0.04814
64 64 0.04636
65 65 0.04824
66 66 0.05140
67 67 0.05060
68 68 0.05602
69 69 0.06230
70 70 0.06436
71 71 0.06132
72 72 0.06396
73 73 0.06120
74 74 0.05466
75 75 0.05832
76 76 0.06704
77 77 0.06776
78 78 0.06076
79 79 0.05698
80 80 0.06096
81 81 0.06566
82 82 0.06282
83 83 0.05626
84 84 0.05456
85 85 0.05716
86 86 0.05634
87 87 0.05258
88 88 0.05564
89 89 0.05608
90 90 0.05284
91 91 0.05228
92 92 0.05008
93 93 0.05322
94 94 0.05018
95 95 0.04752
96 96 0.04478
97 97 0.04732
98 98 0.04524
99 99 0.03788
100 100 0.04192
#### Plotagem -----
plot(CH4A~Sample,data,type='l')
#### integrando com approxfun()
f2 <- approxfun(data$Sample, data$CH4A)
integrate(f2, min(data$Sample), max(data$Sample),subdivisions=1000)
#### integrando com splinefun()
f3 <- splinefun(data$Sample, data$CH4A)
integrate(f3, min(data$Sample), max(data$Sample),subdivisions=1000)
#### plotagem final --------
plot(data$CH4A~data$Sample, type = "n")
curve(f2(x), add = TRUE, col=1)
curve(f3(x), add = TRUE, col=3)
f4 <- splinefun(data$Sample, data$CH4A, method ="natural")
curve(f4(x), add = TRUE, col=4)
### Percebam que algumas variações bruscas não são contempladas pelas
curvas ajustadas, o que provavelmente afeta a área.
Grato pela atenção,
Luigi Cavalcanti
Doutorando em Zootecnia UFMG/Texas A&M University
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20121026/7b16f33b/attachment-0001.html>
Mais detalhes sobre a lista de discussão R-br