0% encontró este documento útil (0 votos)
42 vistas27 páginas

Análisis de Regresión: Altura y Corriente

El documento presenta un análisis de datos sobre el crecimiento de una planta y la relación entre distancia y corriente eléctrica utilizando el método de mínimos cuadrados. Se generan datos, se calculan sumatorias y se grafican las relaciones, encontrando que la relación entre tiempo y altura es lineal, mientras que la relación entre distancia y corriente es logarítmica. Finalmente, se obtienen parámetros estadísticos y se presentan los resultados en tablas y gráficos.

Cargado por

taguilarg
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
42 vistas27 páginas

Análisis de Regresión: Altura y Corriente

El documento presenta un análisis de datos sobre el crecimiento de una planta y la relación entre distancia y corriente eléctrica utilizando el método de mínimos cuadrados. Se generan datos, se calculan sumatorias y se grafican las relaciones, encontrando que la relación entre tiempo y altura es lineal, mientras que la relación entre distancia y corriente es logarítmica. Finalmente, se obtienen parámetros estadísticos y se presentan los resultados en tablas y gráficos.

Cargado por

taguilarg
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Minimos cuadrados

Thomas Gabriel Aguilar Guarin

1 crecimiento de una planta

Lo primero que habría que hacer es crear los datos.

library([Link])
planta <- [Link](`tiempo(dias)`=c(5,10,15,20,25), `altura(cm)`=c(10,20,30,40,50))
head(planta)

## tiempo(dias) altura(cm)
## <num> <num>
## 1: 5 10
## 2: 10 20
## 3: 15 30
## 4: 20 40
## 5: 25 50

Ahora separamos los datos para que sea más comodo trabajar.

`altura(cm)` <- planta$`altura(cm)`


`tiempo(dias)` <- planta$`tiempo(dias)`

Con los datos separados ya podemos sacar datos necesarios para el analisis.

Sumatoria de tiempo
X
t(días)i

sumt <- sum(`tiempo(dias)`)


sumt

## [1] 75

X
t(días)i = 75dias

Sumatoria altura
X
a(cm)i

1
suma <- sum(`altura(cm)`)
suma

## [1] 150

X
a(cm)i = 150cm

Tiempo y altura al cuadrado

t2 <-`tiempo(dias)`ˆ2
t2

## [1] 25 100 225 400 625

a2 <- `altura(cm)`ˆ2
a2

## [1] 100 400 900 1600 2500

Sumatoria de datos al cuadrado


X
t2i
X
a2i

sumt2 <- sum(t2)


sumt2

## [1] 1375

suma2 <- sum(a2)


suma2

## [1] 5500

X
t2i = 1375dias2

X
a2i = 5500cm2
# Sumatoria de ambos datos X
ti ai

2
sumat <- sum(`tiempo(dias)`*`altura(cm)`)
sumat

## [1] 2750

X
ti ai = 2750dias · cm

Ahora graficamos.

plot(`tiempo(dias)`, `altura(cm)`, cex = 2, pch =21, bg = "blue", main = "tiempo vs altura" )

tiempo vs altura
50
40
altura(cm)

30
20
10

5 10 15 20 25

tiempo(dias)

A simple vista parece lineal, así que para confirmarlo, seguiremos con el procedimiento, buscando el delta y
los valores b y a.

n=5

n1 <- length(planta$`altura(cm)`)
n1

## [1] 5

3
X X
δ =n t2i − t(días)i 2

δ = 5 · 1375 − 752

delta1 <- n1*sumt2-sumtˆ2


delta1

## [1] 1250

δ = 1250 dias2

P P P
n ti ai − ti ai
b=
δ
5 · 2750 − 75 · 150
b=
1250
b1 <- (n1*sumat-sumt*suma)/delta1
b1

## [1] 2

b = 2cm

t2i
P P P P
ai − t(días)i ti ai
a=
δ
1375 · 150 − 75 · 2750
a=
1250
a1 <- (sumt2*suma-sumt*sumat)/delta1
a1

## [1] 0

a=0

Hayamos y con la ecuación y = bx + a la función lineal y graficamos.

plot(`tiempo(dias)`, `altura(cm)`, cex = 2, pch =21, bg = "blue", main = "tiempo vs altura" )


lines(`tiempo(dias)`, b1*`tiempo(dias)`+a1, col= "orange")

4
tiempo vs altura
50
40
altura(cm)

30
20
10

5 10 15 20 25

tiempo(dias)

Sacamos los errores para luego graficarlos.


sP
a2i − a
P P
a(cm)i − b ti ai
erroral(cm) =
n−2
r
5500 − 0 · 150 − 2 · 2750
erroral(cm) =
5−2
error_al <- sqrt(suma2-a1*suma-b1*sumat)/sqrt(n1-2)
error_al

## [1] 0

erroral(cm) = 0

library(Hmisc)

##
## Attaching package: ’Hmisc’

## The following objects are masked from ’package:base’:


##
## [Link], units

5
suppressMessages(suppressWarnings(errbar(`tiempo(dias)`, `altura(cm)`, `altura(cm)`+error_al, `altura(cm
suppressMessages(suppressWarnings(lines(`tiempo(dias)`, b1*`tiempo(dias)`+a1, col= "orange")))

tiempo vs altura
50
40
altura(cm)

30
20
10

5 10 15 20 25

tiempo(dias)

Por ultimo queda sacar unos datos restantes.


P
t(días)i
tp =
n

75
tp =
5
tp <- sumt/n1
tp

## [1] 15

tp = 15(dias)

`ti - t prom` <- `tiempo(dias)`-tp


`ti - t prom`

## [1] -10 -5 0 5 10

6
`(ti - t prom2)` <- `ti - t prom`ˆ2
`(ti - t prom2)`

## [1] 100 25 0 25 100

P
a(cm)i
alp =
n
150
alp =
5
alp <- suma/n1
alp

## [1] 30

alp = 30cm

`ali - al prom` <- `altura(cm)`-alp


`ali - al prom`

## [1] -20 -10 0 10 20

`(ali - al prom2)` <- `ali - al prom`ˆ2


`(ali - al prom2)`

## [1] 400 100 0 100 400

`(ti - t prom)(ali - al prom)` <- `ali - al prom`*`ti - t prom`


`(ti - t prom)(ali - al prom)`

## [1] 200 50 0 50 200

Aquí está la tabla con todos los datos. (en R las sumatorias no se pueden meter en una tabla, por lo que
hay que mostrarlas por aparte)

planta_final <- [Link](`tiempo(dias)`=`tiempo(dias)`,`altura(cm)`=`altura(cm)`, t2=t2, a2=a2, `ti -


head(planta_final)

## tiempo(dias) altura(cm) t2 a2 ti - t prom (ti - t prom2) ali - al prom


## <num> <num> <num> <num> <num> <num> <num>
## 1: 5 10 25 100 -10 100 -20
## 2: 10 20 100 400 -5 25 -10
## 3: 15 30 225 900 0 0 0
## 4: 20 40 400 1600 5 25 10
## 5: 25 50 625 2500 10 100 20
## (ali - al prom2) (ti - t prom)(ali - al prom)
## <num> <num>

7
## 1: 400 200
## 2: 100 50
## 3: 0 0
## 4: 100 50
## 5: 400 200

summary(planta_final)

## tiempo(dias) altura(cm) t2 a2 ti - t prom


## Min. : 5 Min. :10 Min. : 25 Min. : 100 Min. :-10
## 1st Qu.:10 1st Qu.:20 1st Qu.:100 1st Qu.: 400 1st Qu.: -5
## Median :15 Median :30 Median :225 Median : 900 Median : 0
## Mean :15 Mean :30 Mean :275 Mean :1100 Mean : 0
## 3rd Qu.:20 3rd Qu.:40 3rd Qu.:400 3rd Qu.:1600 3rd Qu.: 5
## Max. :25 Max. :50 Max. :625 Max. :2500 Max. : 10
## (ti - t prom2) ali - al prom (ali - al prom2) (ti - t prom)(ali - al prom)
## Min. : 0 Min. :-20 Min. : 0 Min. : 0
## 1st Qu.: 25 1st Qu.:-10 1st Qu.:100 1st Qu.: 50
## Median : 25 Median : 0 Median :100 Median : 50
## Mean : 50 Mean : 0 Mean :200 Mean :100
## 3rd Qu.:100 3rd Qu.: 10 3rd Qu.:400 3rd Qu.:200
## Max. :100 Max. : 20 Max. :400 Max. :200

sumt

## [1] 75

suma

## [1] 150

sumt2

## [1] 1375

suma2

## [1] 5500

sum(`ti - t prom`)

## [1] 0

sum(`(ti - t prom2)`)

## [1] 250

8
sum(`ali - al prom`)

## [1] 0

sum(`(ali - al prom2)`)

## [1] 1000

sum(`(ti - t prom)(ali - al prom)`)

## [1] 500

2 Distancia vs corriente (log-log)

Tenemos estos datos.

corriente <- [Link](`Distancia(cm)`= c(1.00, 2.00, 5.00, 11.50, 22.40), `Corriente eléctrica(mA)`= c
head(corriente)

## Distancia(cm) Corriente eléctrica(mA)


## <num> <num>
## 1: 1.0 50.0
## 2: 2.0 11.5
## 3: 5.0 2.0
## 4: 11.5 0.4
## 5: 22.4 0.1

Ahora dividiremos y crearemos datos y diviciones para empezar con la graficación de estos datos.

`Distancia(cm)` <- corriente$`Distancia(cm)`


`Corriente eléctrica(mA)` <- corriente$`Corriente eléctrica(mA)`

X
d(cm)i

sumd <- sum(`Distancia(cm)`)


sumd

## [1] 41.9

X
d(cm)i = 41.9cm

X
c(mA)i

9
sumc <- sum(`Corriente eléctrica(mA)`)
sumc

## [1] 64

X
c(mA)i = 64mA

d2 <- `Distancia(cm)`ˆ2
d2

## [1] 1.00 4.00 25.00 132.25 501.76

c2 <- `Corriente eléctrica(mA)`ˆ2


c2

## [1] 2500.00 132.25 4.00 0.16 0.01

X
d2i

X
c2i

X
d i ci

sumd2 <- sum(d2)


sumd2

## [1] 664.01

sumc2 <- sum(c2)


sumc2

## [1] 2636.42

sumdc <- sum(`Distancia(cm)`*`Corriente eléctrica(mA)`)


sumdc

## [1] 89.84

X
d2i = 664.01cm2

X
c2i = 2636.42mA

X
di ci = 89.84 cm · mA

Ya con estos datos, podemos empezar a graficar.

10
plot(`Distancia(cm)`,`Corriente eléctrica(mA)`, type = "b", cex = 2, pch =21, bg = "blue", main = "dista

distancia vs corriente
50
Corriente eléctrica(mA)

40
30
20
10
0

5 10 15 20

Distancia(cm)

Vemos que la gráfica no es lineal, por lo que se debería buscar una gráfica que nos ayude a linealizar los
datos. Vamos a empezar por hacer una gráfica “log-log”.

`Logc (mA)` <- log10(`Corriente eléctrica(mA)`)


`Logd (cm)` <- log10(`Distancia(cm)`)
plot(`Logd (cm)`, `Logc (mA)`, type = "b", cex = 2, pch =21, bg = "blue", main = "distancia vs corriente

11
distancia vs corriente
1.5
1.0
Logc (mA)

0.5
0.0
−1.0

0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4

Logd (cm)

Ahora vemos que es una lineal inversa en logaritmos, debemos hayar la función de esta gráfica y de la
anterior.

n2 <- length(`Distancia(cm)`)
n2

## [1] 5

n=5
X X 2
δ =n d2i − d(cm)i
δ = 5 · 664.01 − 41.92

delta2 <- n2*sumd2-sumdˆ2


delta2

## [1] 1564.44

δ = 1564.44cm2

P P P
n di ci − d(cm)i c(mA)i
b=
δ
5 · 89.84 − 41.9 · 64
b=
1564.44

12
b2 <- (n2*sumdc-sumd*sumc)/delta2
b2

## [1] -1.426964

cm · mA
b = −1.426964
cm2

d2i
P P P P
c(mA)i − d(cm)i di ci
a=
δ
664.01 · 64 − 41.9 · 89.84
a=
1564.44
a2 <- (sumd2*sumc-sumd*sumdc)/delta2
a2

## [1] 24.75796

a = 24.75796 cm · mA

par(mfrow = c(1,2), mar = c(4, 3, 3, 1))


plot(`Distancia(cm)`, `Corriente eléctrica(mA)`, type = "b", cex = 2, pch =21, bg = "blue", main = "dist
lines(`Distancia(cm)`, a2*`Distancia(cm)`ˆb2, type = "c", col= "orange")
`Logc (mA)2` <- log10(a2)+b2*`Logd (cm)`
plot(`Logd (cm)`, `Logc (mA)`, type = "b", cex = 2, pch =21, bg = "blue", main = "log distancia vs log c
lines(`Logd (cm)`, log10(a2)+b2*`Logd (cm)`, col="orange")

13
50 distancia vs corriente log distancia vs log corriente

1.5
40
Corriente eléctrica(mA)

1.0
Logc (mA)
30

0.5
20

0.0
−0.5
10

−1.0
0

5 10 15 20 0.0 0.4 0.8 1.2

Distancia(cm) Logd (cm)


Por un lado, la gráfica sin logaritmizar coincide mucho con los datos, por lo que el error en esta gráfica no es
tan necesario. Por otro lado, la gráfica de log-log, la lineal parece no tener relación con los datos, por lo que
vamos a encontrar el error de y para así ver si la linea está dentro del error de y, graficandola nuevamente.
sP
d2i − a
P P
c(mA)i − b di ci
errorc(mA) =
n−2
r
664.01 − 24.75796 · 64 − (−1.426964) · 89.84
errorc(mA) =
5−2
error_c <- sqrt(sumc2-a2*sumc-b2*sumdc)/sqrt(n2-2)
error_c

## [1] 19.83355

errorc(mA) = 19.83355mA

par(mfrow = c(1,2), mar = c(4, 3, 3, 1))


suppressMessages(suppressWarnings(errbar(`Distancia(cm)`, `Corriente eléctrica(mA)`, `Corriente eléctric
suppressMessages(suppressWarnings(lines(`Distancia(cm)`, a2*`Distancia(cm)`ˆb2, type = "c", col= "orange
suppressMessages(suppressWarnings(errbar(`Logd (cm)`, `Logc (mA)`, `Logc (mA)`+log10(error_c), `Logc (mA
suppressMessages(suppressWarnings(lines(`Logd (cm)`, log10(a2)+b2*`Logd (cm)`, col="orange")))

14
distancia vs corriente log distancia vs log corriente

3
60

2
Corriente eléctrica(mA)

40

1
Logc (mA)
20

0
−1
0

−2
−20

5 10 15 20 0.0 0.4 0.8 1.2

Distancia(cm) Logd (cm)


Por lo que podemos observar en las graficas, ambas lineas no se salen de el error de y que es representado
por esa linea naranja vertical en el punto, así que podemos dar esto como valido.
Solo quedaría crear los datos para la tabla final.
P
d(cm)i
dp =
n
41.9
dp =
5
dp <- sumd/n2
dp

## [1] 8.38

dp = 8.38cm

`di - d prom` <- `Distancia(cm)`-dp


`di - d prom`

## [1] -7.38 -6.38 -3.38 3.12 14.02

15
`(di - d prom2)` <- `di - d prom`ˆ2
`(di - d prom2)`

## [1] 54.4644 40.7044 11.4244 9.7344 196.5604

P
c(mA)i
cp =
n
64
cp =
5
cp <- sumc/n2
cp

## [1] 12.8

cp = 12.8

`ci - c prom` <- `Corriente eléctrica(mA)`-cp


`ci - c prom`

## [1] 37.2 -1.3 -10.8 -12.4 -12.7

`(ci - c prom2)` <- `ci - c prom`ˆ2


`(ci - c prom2)`

## [1] 1383.84 1.69 116.64 153.76 161.29

`(di - d prom)(ci - c prom)` <- `ci - c prom`*`di - d prom`


`(di - d prom)(ci - c prom)`

## [1] -274.536 8.294 36.504 -38.688 -178.054

corriente_final <- [Link](`Distancia(cm)`=`Distancia(cm)`, `Corriente eléctrica(mA)`=`Corriente eléc


head(corriente_final)

## Distancia(cm) Corriente eléctrica(mA) d2 c2 di - d prom


## <num> <num> <num> <num> <num>
## 1: 1.0 50.0 1.00 2500.00 -7.38
## 2: 2.0 11.5 4.00 132.25 -6.38
## 3: 5.0 2.0 25.00 4.00 -3.38
## 4: 11.5 0.4 132.25 0.16 3.12
## 5: 22.4 0.1 501.76 0.01 14.02
## (di - d prom2) ci - c prom (ci - c prom2) (di - d prom)(ci - c prom)
## <num> <num> <num> <num>
## 1: 54.4644 37.2 1383.84 -274.536
## 2: 40.7044 -1.3 1.69 8.294
## 3: 11.4244 -10.8 116.64 36.504
## 4: 9.7344 -12.4 153.76 -38.688
## 5: 196.5604 -12.7 161.29 -178.054

16
summary(corriente_final)

## Distancia(cm) Corriente eléctrica(mA) d2 c2


## Min. : 1.00 Min. : 0.1 Min. : 1.0 Min. : 0.01
## 1st Qu.: 2.00 1st Qu.: 0.4 1st Qu.: 4.0 1st Qu.: 0.16
## Median : 5.00 Median : 2.0 Median : 25.0 Median : 4.00
## Mean : 8.38 Mean :12.8 Mean :132.8 Mean : 527.28
## 3rd Qu.:11.50 3rd Qu.:11.5 3rd Qu.:132.2 3rd Qu.: 132.25
## Max. :22.40 Max. :50.0 Max. :501.8 Max. :2500.00
## di - d prom (di - d prom2) ci - c prom (ci - c prom2)
## Min. :-7.38 Min. : 9.734 Min. :-12.7 Min. : 1.69
## 1st Qu.:-6.38 1st Qu.: 11.424 1st Qu.:-12.4 1st Qu.: 116.64
## Median :-3.38 Median : 40.704 Median :-10.8 Median : 153.76
## Mean : 0.00 Mean : 62.578 Mean : 0.0 Mean : 363.44
## 3rd Qu.: 3.12 3rd Qu.: 54.464 3rd Qu.: -1.3 3rd Qu.: 161.29
## Max. :14.02 Max. :196.560 Max. : 37.2 Max. :1383.84
## (di - d prom)(ci - c prom)
## Min. :-274.536
## 1st Qu.:-178.054
## Median : -38.688
## Mean : -89.296
## 3rd Qu.: 8.294
## Max. : 36.504

sumd

## [1] 41.9

sumc

## [1] 64

sumd2

## [1] 664.01

sumc2

## [1] 2636.42

sum(`di - d prom`)

## [1] 3.552714e-15

sum(`(di - d prom2)`)

## [1] 312.888

17
sum(`ci - c prom`)

## [1] 0

sum(`(ci - c prom2)`)

## [1] 1817.22

sum(`(di - d prom)(ci - c prom)`)

## [1] -446.48

3 semi-log
Los datos que manejaremos no tienen unidades así que los tomaremos como un simple “x” e “y”

datos <- [Link](x=c(-0.9, -0.6, 0.2, 0.5, 0.8, 1.1, 1.4, 1.7, 2.0, 2.3), y=c(0.05, 0.17, 3.57, 11.16
head(datos, n=11)

## x y
## <num> <num>
## 1: -0.9 0.05
## 2: -0.6 0.17
## 3: 0.2 3.57
## 4: 0.5 11.16
## 5: 0.8 34.91
## 6: 1.1 109.16
## 7: 1.4 341.32
## 8: 1.7 1067.23
## 9: 2.0 3336.99
## 10: 2.3 10433.98

Como en los anteriores casos, sacamos los datos necesarios para todo el analisis.

x <- datos$x
y <- datos$y

X
xi

sumx <- sum(x)


sumx

## [1] 8.5

X
xi = 8.5

X
yi

18
sumy <- sum(y)
sumy

## [1] 15338.54

X
yi = 15338.54

x2 <- xˆ2
x2

## [1] 0.81 0.36 0.04 0.25 0.64 1.21 1.96 2.89 4.00 5.29

y2 <- yˆ2
y2

## [1] 2.500000e-03 2.890000e-02 1.274490e+01 1.245456e+02 1.218708e+03


## [6] 1.191591e+04 1.164993e+05 1.138980e+06 1.113550e+07 1.088679e+08

X
x2i
X
yi2
X
xi yi

sumx2 <- sum(x2)


sumx2

## [1] 17.45

sumy2 <- sum(y2)


sumy2

## [1] 121272192

sumxy <- sum(x*y)


sumxy

## [1] 33118.42

X
x2i = 17.45
X
yi2 = 121272192
X
xi yi = 33118.42

Graficamos.

19
plot(x, y, type = "b", cex = 2, pch =21, bg = "blue", main = "x vs y")

x vs y
10000
6000
y

2000
0

−1.0 −0.5 0.0 0.5 1.0 1.5 2.0

Tampoco dio una lineal, por lo que hay que saber que linealidad tiene, así que la gráficaremos en log-log,
log-normal y normal-log.

par(mfrow = c(1,3), mar = c(4, 3, 3, 1))


plot(x=log10(x), y=log10(y), type = "b", cex = 2, pch =21, bg = "blue", main = "log-log")

## Warning in plot(x = log10(x), y = log10(y), type = "b", cex = 2, pch = 21, : Se


## han producido NaNs

plot(x=log10(x), y, type = "b", cex = 2, pch =21, bg = "blue", main = "log-nor")

## Warning in plot(x = log10(x), y, type = "b", cex = 2, pch = 21, bg = "blue", :


## Se han producido NaNs

plot(x, y=log10(y), type = "b", cex = 2, pch =21, bg = "blue", main = "nor-log")

20
4 log−log log−nor nor−log

4
10000
3

3
8000
2

2
6000
log10(y)

log10(y)
y
1

1
4000
0

0
2000
−1

−1
0

−0.6 −0.2 0.0 0.2 0.4 −0.6 −0.2 0.0 0.2 0.4 −1.0 0.0 1.0 2.0

log10(x) log10(x) x

Como se puede ver la gráfica normal-log es la lineal, por lo que hayaremos el a, y el b de esta función.

n3 <- length(x)
n3

## [1] 10

n = 10

X X
δ =n x2i − xi 2

δ = 10 · 17.45 − 8.52

delta3 <- n3*sumx2-sumxˆ2


delta3

## [1] 102.25

δ = 102.25
ln(y2 ) − ln(y1 )
b=
x2 − x1

21
ln(10433.98) − ln(0.05)
b=
2.3 − (−0.9)

b3 <- (log(10433.98)-log(0.05))/(2.3-(-0.9))
b3

## [1] 3.827674

b = 3.827674

y = a · eb∗x
y a · eb·x
=
eb·x eb·x

y
=a
eb·x
10433.98
a = 3.827674·2.3
e
a3 <- 10433.98/(exp(1))ˆ(b3*2.3)
a3

## [1] 1.567017

a = 1.567017

par(mfrow = c(1,2), mar = c(4, 3, 3, 1))


plot(x, y, cex = 2, pch =21, bg = "blue", main = "x vs y")
lines(x, a3*exp(1)ˆ(b3*x), cex= 20, pch=21, col= "orange")
plot(x, y=log10(y), cex = 2, pch =21, bg = "blue", main = "x vs log y")
lines(x, log10(a3)+x*b3*log10(exp(1)), col="orange")

22
x vs y x vs log y

4
8000

3
6000

2
log10(y)
y

1
4000

0
2000

−1
0

−1.0 0.0 1.0 2.0 −1.0 0.0 1.0 2.0

x x
Como se puede observar, tanto los datos como la función coinciden perfectamente, de todos modos tambien
hayaremos y graficaremos el error de y.
sP
yi2 − a
P P
yi − b xi yi
errory =
10 − 2
r
121272192 − 1.567017 · 1533.854 − 3.827674 · 33118.42
errory =
10 − 2

error_y <- sqrt(sumy2-a3*sumy-b3*sumxy)/sqrt(n3-2)


error_y

## [1] 3891.038

errory = 3891.038

par(mfrow = c(1,2), mar = c(4, 3, 3, 1))


suppressMessages(suppressWarnings(errbar(x, y, y+error_y, y-error_y, color="blue", [Link] = "orange"
suppressMessages(suppressWarnings(lines(x, a3*exp(1)ˆ(b3*x), type = "c", col= "orange")))
suppressMessages(suppressWarnings(errbar(x, log10(y), log10(y)+log10(error_y), log10(y)-log10(error_y),
suppressMessages(suppressWarnings(lines(x, log10(a3)+x*b3*log10(exp(1)), col="orange")))

23
15000 x vs y x vs log y

8
6
10000

4
log10

2
5000
y

y
0 −2
0

−4

−1.0 0.0 1.0 2.0 −1.0 0.0 1.0 2.0

x x
Como era de esperarse, la función está dentro del error de y en ambos casos.
Crearemos los datos para obtener la tabla y terminar este ejercicio.
P
xi
xp =
n
8.5
xp =
10
xp <- sumx/n3
xp

## [1] 0.85

xp = 0.85

`xi - x prom` <- x-xp


`xi - x prom`

## [1] -1.75 -1.45 -0.65 -0.35 -0.05 0.25 0.55 0.85 1.15 1.45

`(xi - x prom2)` <- xˆ2


`(xi - x prom2)`

24
## [1] 0.81 0.36 0.04 0.25 0.64 1.21 1.96 2.89 4.00 5.29

P
yi
yp =
n
15338.54
yp =
10
yp <- sumy/n3
yp

## [1] 1533.854

yp = 1533.854

`yi - y prom` <- y-yp


`yi - y prom`

## [1] -1533.804 -1533.684 -1530.284 -1522.694 -1498.944 -1424.694 -1192.534


## [8] -466.624 1803.136 8900.126

`(yi - y prom2)` <- `yi - y prom`ˆ2


`(yi - y prom2)`

## [1] 2352555 2352187 2341769 2318597 2246833 2029753 1422137 217738


## [9] 3251299 79212243

`(xi - x prom)(yi - y prom)` <- `yi - y prom`*`xi - x prom`


`(xi - x prom)(yi - y prom)`

## [1] 2684.1570 2223.8418 994.6846 532.9429 74.9472 -356.1735


## [7] -655.8937 -396.6304 2073.6064 12905.1827

semilog_fin <- [Link](x=x, y=y, x2=x2, y2=y2, `xi - x prom`=`xi - x prom`, `(xi - x prom2)`=`(xi - x
head(semilog_fin)

## x y x2 y2 xi - x prom (xi - x prom2) yi - y prom


## <num> <num> <num> <num> <num> <num> <num>
## 1: -0.9 0.05 0.81 0.0025 -1.75 0.81 -1533.804
## 2: -0.6 0.17 0.36 0.0289 -1.45 0.36 -1533.684
## 3: 0.2 3.57 0.04 12.7449 -0.65 0.04 -1530.284
## 4: 0.5 11.16 0.25 124.5456 -0.35 0.25 -1522.694
## 5: 0.8 34.91 0.64 1218.7081 -0.05 0.64 -1498.944
## 6: 1.1 109.16 1.21 11915.9056 0.25 1.21 -1424.694
## (yi - y prom2) (xi - x prom)(yi - y prom)
## <num> <num>
## 1: 2352555 2684.1570
## 2: 2352187 2223.8418
## 3: 2341769 994.6846
## 4: 2318597 532.9429
## 5: 2246833 74.9472
## 6: 2029753 -356.1735

25
summary(semilog_fin)

## x y x2 y2
## Min. :-0.900 Min. : 0.050 Min. :0.040 Min. : 0
## 1st Qu.: 0.275 1st Qu.: 5.468 1st Qu.:0.430 1st Qu.: 41
## Median : 0.950 Median : 72.035 Median :1.010 Median : 6567
## Mean : 0.850 Mean : 1533.854 Mean :1.745 Mean : 12127219
## 3rd Qu.: 1.625 3rd Qu.: 885.753 3rd Qu.:2.658 3rd Qu.: 883360
## Max. : 2.300 Max. :10433.980 Max. :5.290 Max. :108867939
## xi - x prom (xi - x prom2) yi - y prom (yi - y prom2)
## Min. :-1.750 Min. :0.040 Min. :-1533.8 Min. : 217738
## 1st Qu.:-0.575 1st Qu.:0.430 1st Qu.:-1528.4 1st Qu.: 2084023
## Median : 0.100 Median :1.010 Median :-1461.8 Median : 2330183
## Mean : 0.000 Mean :1.745 Mean : 0.0 Mean : 9774511
## 3rd Qu.: 0.775 3rd Qu.:2.658 3rd Qu.: -648.1 3rd Qu.: 2352463
## Max. : 1.450 Max. :5.290 Max. : 8900.1 Max. :79212243
## (xi - x prom)(yi - y prom)
## Min. : -655.9
## 1st Qu.: -248.4
## Median : 763.8
## Mean : 2008.1
## 3rd Qu.: 2186.3
## Max. :12905.2

sumx

## [1] 8.5

sumy

## [1] 15338.54

sumx2

## [1] 17.45

sumy2

## [1] 121272192

sum(`xi - x prom`)

## [1] -1.110223e-16

sum(`(xi - x prom2)`)

## [1] 17.45

26
sum(`yi - y prom`)

## [1] 1.818989e-12

sum(`(yi - y prom2)`)

## [1] 97745111

sum(`(xi - x prom)(yi - y prom)`)

## [1] 20080.66

27

También podría gustarte