Muchas gracias Carlos, estuve dando muchas vueltas y no lo veia.

Gracias a eso he descubierto otro error aver si soy capaz de solucionarlo!

Muchas gracias!!un saludo


El 9 de julio de 2014, 13:37, Carlos Ortega <[email protected]>
escribió:

> Hola,
>
> La diferencia la tienes en que en la columna "gear" del  data.frame grande
> (DBx$gear) hay muchos "NAs" que no aparecen en los otros data.frames que
> generas luego: DBharbour, DBsteaming, DBfishing, DBnight.
>
> Una forma de verlo programáticamente es esta:
>
>
> > DB.new <- rbind.data.frame(DBharbour, DBsteaming, DBfishing, DBnight)> 
> > DBnew <- DB.new[,1:26]> > dim(DBx)[1] 586561     26> dim(DBnew)[1] 509370   
> >   26> > a1 <- as.data.frame(summary(DBx$gear))> a2 <- 
> > as.data.frame(summary(DBnew$gear))> a1                             
> > summary(DBx$gear)
> BLL                                      62346
> BLL / HL                                     0
> BLL / PLL                                26789
> NotLic                                   27215
> OUT                                      25270
> PLL                                     163204
> PLL / PoleLine                               0
> PoleLine                                204546
> PoleLine / PLL / BLL / Traps                 0
> Troll                                        0
> NA's                                     77191> a2                            
>  summary(DBnew$gear)
> BLL                                        62346
> BLL / HL                                       0
> BLL / PLL                                  26789
> NotLic                                     27215
> OUT                                        25270
> PLL                                       163204
> PLL / PoleLine                                 0
> PoleLine                                  204546
> PoleLine / PLL / BLL / Traps                   0
> Troll                                          0> > > > # 
> http://stackoverflow.com/questions/3171426/compare-two-data-frames-to-find-the-rows-in-data-frame-1-that-are-not-present-in>
>  library(sqldf)> DBx.Noen.DBnew <- sqldf("select * from a1 EXCEPT select * 
> from a2")> DBx.Noen.DBnew  summary_DBx_gear_
> 1             77191
>
>
>
>
>
> Saludos,
> Carlos Ortega
> www.qualityexcellence.es
>
>
>
>
> El 9 de julio de 2014, 14:55, Carlos Ortega <[email protected]>
> escribió:
>
> Hola,
>>
>> No, no te dan más datos de los que partes...
>>
>> > z1[1] 586561> z2+z4+z5+z6[1] 509370> z1 > (z2+z4+z5+z6)[1] TRUE
>>
>>
>>
>> Pero tampoco son iguales como esperabas.
>>
>>
>> Saludos,
>> Carlos Ortega
>> www.qualityexcellence.es
>>
>>
>>
>>
>> 2014-07-09 13:56 GMT+02:00 Marta valdes lopez <[email protected]>:
>>
>>> Hola a todos,
>>>
>>> Me gustaria pedir vuestra ayuda a encontrar el error que no consigo
>>> encontrar en este archivo. He revisado todo mil veces y probado y no doy
>>> con ello.Adjunto el archivo con Google drive porque es muy grande.
>>>
>>> ​
>>>  monicap_50.csv
>>> <https://docs.google.com/file/d/0B8o2KrPEgG7ATlBMc19lTVk1d3M/edit?usp=drive_web>
>>> ​
>>> Este es el script, y lo que no entiendo que pasa es que tengo 592044
>>> datos despues de limpiar los NA quedan 586561 datos , y cuando utilizo el
>>> script la suma de z2+z4+z5+z6 , que son los estados deberia de darme lo
>>> mismo que Z1 que es el valor total de datos pero no se que error existe que
>>> me dan mas datos que los que hay.He comparado con el archivo en excel y los
>>> datos de na estan correctos.
>>>
>>> library(chron)
>>>   library(xlsx)
>>>  filename<-"monicap_50.csv"
>>>   DBxy<-read.csv(filename, sep=";",header=TRUE,dec=",")
>>>  DBx<-na.omit(DBxy)
>>>  names(DBx)<-c("Boat","DateTime","TimeDiff", "Latitude", "Longitude",
>>> "Course", "Speed", "distNm", "calcSpeed", "calcCourse", "distHb",
>>> "Harbour", "idTrip","vmsAngle", "calcAngle", "vmsLeg", "calcLeg",
>>> "Trip_vmsLeg", "Trip_calcLeg", "lengthTrip", "lengthTrip_vmsLeg",
>>> "lengthTrip_calcLeg","Time", "Date")
>>>   #Formatting date and time variables
>>>   DBx$Date<-strptime(DBx$Date, "%d-%m-%Y")
>>>   DBx$Year<-as.POSIXlt(DBx$Date)$year+1900
>>>   if(filename!="monicap_50.csv") {DBx$Time<-paste(DBx$Time, ":00",
>>> sep="")}   #NOT necessary for Monicap and Univerest_50
>>>   DBx$Time<-times(DBx$Time)       #Works for Monicap AND UNIVEREST_50
>>> ONLY
>>>   DBx$Boat<-gsub("^\\s+|\\s+$", "",
>>> DBx$Boat)
>>>    #Read file with boat codes and gears
>>>   codeBoats<- read.csv("CODES_2002-2010New.csv",
>>> sep=",",header=TRUE)            #Laptop
>>>   codeBoats$CODIGO<-gsub("^\\s+|\\s+$", "", codeBoats$CODIGO)
>>>  #Assigning a Fishing license based on Boat and Year
>>>   DBx$gear<-codeBoats$Lic[match(paste(DBx$Boat,DBx$Year),
>>> paste(codeBoats$CODIGO,codeBoats$Year))]
>>> z0<-length(DBx$gear)
>>>  z1<-length(DBx$gear)
>>>   z1
>>>  #defining speed and distance limits
>>>       speedFishing<-2.0
>>>       speedHarb<-1.0
>>>       distHbRule<-3.0
>>> speedSteam<-2.0
>>>       minTime<-times(c("05:59:59"))        #usual beginning of fishing
>>> operations
>>>       maxTime<- times(c("20:59:59"))        #usual finishing of fishing
>>> operations
>>>        #Selecting Harbour
>>>         DBharbour<- na.omit(DBx[DBx$distHb<=distHbRule &
>>> DBx$calcSpeed<=speedHarb,])
>>>         DBharbour$State<-"Harbour"   #MONICAP= 10618; UNIVER1= ;
>>> UNIVER2= ; UNIVEREST= 1028
>>>         z2<-length(DBharbour$State)
>>>  #Selecting Steaming
>>>         DBsteaming<- na.omit(DBx[(DBx$calcSpeed>speedFishing) |
>>> (DBx$distHb<=distHbRule & DBx$calcSpeed>speedHarb),])
>>>         DBsteaming$State<- "Steaming" #MONICAP= 88398; UNIVER1= ;
>>> UNIVER2= ; UNIVEREST= 53748
>>>         DBsteaming$Harbour<-""
>>>         z4<-length(DBsteaming$State)
>>>          #Selecting Fishing
>>>         DBfishing<- na.omit(DBx[(DBx$calcSpeed<=speedFishing &
>>> DBx$distHb>distHbRule & DBx$Time>minTime & DBx$Time<=maxTime),])
>>>         DBfishing$State<-"Fishing"
>>>   DBfishing$Harbour<-""
>>>         z5<-length(DBfishing$State)
>>>        #Selecting nigth
>>>         DBnight<- na.omit(DBx[(DBx$calcSpeed<=speedFishing &
>>> DBx$distHb>distHbRule &(DBx$Time<=minTime | DBx$Time>maxTime)),])
>>>         DBnight$State<-"Night"  #MONICAP=10434; UNIVER1= 16677; UNIVER2=
>>> 25789
>>>         DBnight$Harbour<-""
>>>         z6<-length(DBnight$State)
>>>
>>> Si alguien ve el error y puede echarme una mano agradeceria, si no pues
>>> seguire peleandome con el archivo!
>>>
>>> Muchas gracias, un saludo
>>>
>>>
>>> _______________________________________________
>>> R-help-es mailing list
>>> [email protected]
>>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>>
>>>
>>
>>
>> --
>> Saludos,
>> Carlos Ortega
>> www.qualityexcellence.es
>>
>
>
>
> --
> Saludos,
> Carlos Ortega
> www.qualityexcellence.es
>

        [[alternative HTML version deleted]]

_______________________________________________
R-help-es mailing list
[email protected]
https://stat.ethz.ch/mailman/listinfo/r-help-es

Responder a