Hola,

Esta última duda (diferencia en una unidad entre un cálculo con agregate()
y una consulta SQL) es idéntica a la que planteaste el 29-sep. En aquel
momento te dimos varias alternativas, y al final tú mismo "cerraste" el
hilo con este mensaje:

################

---------- Forwarded message ----------
From: juan manuel dias <juamadias@gmail.com>
Date: 2011/9/29
Subject: Re: [R-es] Consultas sobre diferencias de Sumas Agregadas en R y
en SQL.
To: Carlos Ortega <coforfe@gmail.com>
Cc: "Gregorio R. Serrano" <grserrano@ccee.ucm.es>, r-help-es@r-project.org


Hola Estimados!

Muchas gracias por las respuestas. Es una diferencia que no es un problema
pero nos resulta un miesterio.

-Descartaría lo de que pueda existir un registro codificado con -1, porque
de hecho miramos los registros en la tabla SQL.
-Y lo segundo sería muy raro, porque se trataría de un caso que al
duplicarse debería ser igual a 1 en todos los campos que se suman.
 Esto es casi imposible ya que estamos hablando de envíos de medicamentos
con su precio de mercado y su costo de adquisición, que rara vez coincide
con la unidad.

Yo me imgaino que puede ser un error por una distinta definición en los
tipos de campos. Que en la tabla SQL los tenga de una forma. Los campos que
se suamn son:
**
*Tratamientos* que en SQL está definido *(Decimal (38,14),Null)*
*PrecioMedicamento *que en SQL está definido *(Decimal (32,8),Null)*
*CostoMedicamento *que en SQL está definido *(Decimal (34,8),Null)*
**
No se que posibilidad hay de que en el R se alteren esas definiciones. De
todas formas no es un problema grave pero la obsesión de querer saberlo
puede más.

Saludos!!

Mcuhas gracias!
**
################

Saludos,
Carlos Ortega
www.qualityexcellence.es


El 8 de noviembre de 2011 19:45, juan manuel dias <juamadias@gmail.com>escribió:

> Hola Carlos,
> Que puede estar pasando? Porque si bien el filtro no arroja error de
> sintaxis no está aplicando, ya que la suma final toma en cuenta todos los
> departamentos. Además, la suma de R nos da una unidad (1) de menos en
> comparación con la de SQL.
> Bueno, espero no haber molestado más de la cuenta.
> Saludos!
> Juan Manuel.
> *TransAcDeptoT <- aggregate( TransAcDepto$Tratamientos, by =
> list(TransAcDepto$Provincia), FUN="sum", na=T)    #suma el total de los
> deptos seleccionados
>           TransAcDeptoC <- aggregate( TransAcDepto$Costo, by =
> list(TransAcDepto$Provincia), FUN="sum", na=T)
>           TransAcDeptoP <- aggregate( TransAcDepto$Precio, by =
> list(TransAcDepto$Provincia), FUN="sum", na=T)
> *
> El 8 de noviembre de 2011 12:39, Carlos J. Gil Bellosta <
> cgb@datanalytics.com> escribió:
>
> > %in% significa "en", que es lo que quieres: identificar las entradas
> > de un vector que se encuentran _en_ otro.
> >
> > == significa igual; y para que dos vectores sean _iguales_ tienen que
> > tener igual longitud (salvo reciclaje) y las entradas
> > _posicionalmente_ iguales.
> >
> > Un saludo,
> >
> > Carlos J. Gil Bellosta
> > http://www.datanalytics.com
> >
> >
> > El día 8 de noviembre de 2011 16:35, juan manuel dias
> >  <juamadias@gmail.com> escribió:
> > > Hola Carlos!
> > > Muchas gracias, de esta forma corrió sin problemas.
> > > Me podras explicar, si no implica mayor trabajo, porque este cambio en
> el
> > > filtro no arroja error y de la otra forma si?
> > > Bueno, muchas gracias nuevamente.
> > > Saludos.
> > > Juan Manuel.
> > >
> > > El 8 de noviembre de 2011 12:04, Carlos J. Gil Bellosta
> > > <cgb@datanalytics.com> escribió:
> > >>
> > >> Hola, ¿qué tal?
> > >>
> > >> No uses "==" sino %in%.
> > >>
> > >> Un saludo,
> > >>
> > >> Carlos J. Gil Bellosta
> > >> http://www.datanalytics.com
> > >>
> > >>
> > >> El día 8 de noviembre de 2011 15:59, juan manuel dias
> > >> <juamadias@gmail.com> escribió:
> > >> > Hola Estimdos,
> > >> > Quería consultar por si alguien sabe que puede estar pasando con la
> > >> > aplicación de un filtro.
> > >> >
> > >> > Arroja el siguiente mensaje:
> > >> >
> > >> > *Mensajes de aviso perdidos
> > >> > In TransAcProv$idDepartamento == filtro2 :
> > >> >  longitud de objeto mayor no es múltiplo de la longitud de uno
> menor*
> > >> >
> > >> > Este es el filtro:
> > >> >
> > >> > *filtro2 <- c (450, 30 , 449, 862 , 452)*
> > >> >
> > >> > Y se aplica sobre este data frame:
> > >> >
> > >> > *TransAcDepto <-
> > >> > as.data.frame(TransAcProv[TransAcProv$idDepartamento==filtro2,])
> > >> > *
> > >> > *str (TransAcDepto)*
> > >> > *
> > >> > *
> > >> > *'data.frame':   7 obs. of  7 variables:
> > >> >  $ idProvincia   : int  15 15 15 15 15 15 15
> > >> >  $ Provincia     : Factor w/ 24 levels "BUENOS AIRES",..: 20 20 20
> 20
> > 20
> > >> > 20
> > >> > 20
> > >> >  $ idDepartamento: int  30 862 861 449 450 451 452
> > >> >  $ Departamento  : Factor w/ 429 levels "12 DE OCTUBRE",..: 180 240
> > 108
> > >> > 213
> > >> > 101 214 319
> > >> >  $ Costo         : num  169302 30498 121829 53739 63919 ...
> > >> >  $ Precio        : num  1406362 240837 873203 420907 497073 ...
> > >> >  $ Tratamientos  : num  278862 47159 173082 83905 98447 ...*
> > >> >
> > >> > Muchas gracias.
> > >> > Juan Manuel.
> > >> >
> > >> >        [[alternative HTML version deleted]]
> > >> >
> > >> >
> > >> > _______________________________________________
> > >> > R-help-es mailing list
> > >> > R-help-es@r-project.org
> > >> > https://stat.ethz.ch/mailman/listinfo/r-help-es
> > >> >
> > >> >
> > >
> > >
> >
>
>         [[alternative HTML version deleted]]
>
>
> _______________________________________________
> R-help-es mailing list
> R-help-es@r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
>

	[[alternative HTML version deleted]]

