[R] include

Jim Lemon drjimlemon at gmail.com
Sun Feb 25 01:18:05 CET 2018


hi Val,
Your problem seems to be that the data are read in as a factor. The
simplest way I can think of to get around this is:

mydat <- read.table(textConnection("Col1 Col2 col3
Z1 K1 K2
Z2 NA NA
Z3 X1 NA
Z4 Y1 W1"),header = TRUE,stringsAsFactors=FALSE)
preval<-data.frame(Col1=unique(unlist(mydat[,c("Col2","col3")]))[-1],
 Col2=NA,col3=NA)
rbind(preval,mydat)
mydat[is.na(mydat)]<-"0"

Jiim


On Sun, Feb 25, 2018 at 11:05 AM, Val <valkremk at gmail.com> wrote:
> Sorry , I hit the send key accidentally  here is my complete message.
>
> Thank you Jim   and all, I got it.
>
> I have one more question on the original question
>
>  What does this  "[-1] "  do?
> preval<-data.frame(Col1=unique(unlist(mydat[,c("Col2","col3")]))[-1],
>                    Col2=NA,col3=NA)
>
>
> mydat <- read.table(textConnection("Col1 Col2 col3
> Z1 K1 K2
> Z2 NA NA
> Z3 X1 NA
> Z4 Y1 W1"),header = TRUE)
>
> preval<-data.frame(Col1=unique(unlist(mydat[,c("Col2","col3")]))[-1],
>                    Col2=NA,col3=NA)
> rbind(unique(preval),mydat)
>
>
>  Col1 Col2 col3
> 1 <NA> <NA> <NA>
> 2   X1 <NA> <NA>
> 3   Y1 <NA> <NA>
> 4   K2 <NA> <NA>
> 5   W1 <NA> <NA>
> 6   Z1   K1   K2
> 7   Z2 <NA> <NA>
> 8   Z3   X1 <NA>
> 9   Z4   Y1   W1
>
> I could not find K1 in the first   col1. Is that possible to fix this?
>
> On Sat, Feb 24, 2018 at 5:59 PM, Val <valkremk at gmail.com> wrote:
>
>> Thank you Jim   and all, I got it.
>>
>> I have one more question on the original question
>>
>>  What does this  "[-1] "  do?
>> preval<-data.frame(Col1=unique(unlist(mydat[,c("Col2","col3")]))[-1],
>>                    Col2=NA,col3=NA)
>>
>>
>> mydat <- read.table(textConnection("Col1 Col2 col3
>> Z1 K1 K2
>> Z2 NA NA
>> Z3 X1 NA
>> Z4 Y1 W1"),header = TRUE)
>>
>> preval<-data.frame(Col1=unique(unlist(mydat[,c("Col2","col3")]))[-1],
>>                    Col2=NA,col3=NA)
>> rbind(unique(preval),mydat)
>>
>>
>>  Col1 Col2 col3
>> 1 <NA> <NA> <NA>
>> 2   X1 <NA> <NA>
>> 3   Y1 <NA> <NA>
>> 4   K2 <NA> <NA>
>> 5   W1 <NA> <NA>
>> 6   Z1   K1   K2
>> 7   Z2 <NA> <NA>
>> 8   Z3   X1 <NA>
>> 9   Z4   Y1   W1
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> On Sat, Feb 24, 2018 at 5:04 PM, Duncan Murdoch <murdoch.duncan at gmail.com>
>> wrote:
>>
>>> On 24/02/2018 1:53 PM, William Dunlap via R-help wrote:
>>>
>>>>     x1 =  rbind(unique(preval),mydat)
>>>>    x2 <- x1[is.na(x1)] <- 0
>>>>    x2  # gives 0
>>>>
>>>> Why introduce the 'x2'?   x1[...] <- 0 alters x1 in place and I think
>>>> that
>>>> altered x1 is what you want.
>>>>
>>>> You asked why x2 was zero.  The value of the expression
>>>>     f(a) <- b
>>>> and assignments are processed right to left so
>>>>     x2 <- x[!is.na(x1)] <- 0
>>>> is equivalent to
>>>>     x[!is.na(x1)] <- 0
>>>>     x2 <- 0
>>>>
>>>
>>> That's not right in general, is it?  I'd think that should be
>>>
>>>     x[!is.na(x1)] <- 0
>>>     x2 <- x1
>>>
>>> Of course, in this example, x1 is 0, so it gives the same answer.
>>>
>>> Duncan Murdoch
>>>
>>>
>>>
>>>>
>>>> Bill Dunlap
>>>> TIBCO Software
>>>> wdunlap tibco.com
>>>>
>>>> On Sat, Feb 24, 2018 at 9:59 AM, Val <valkremk at gmail.com> wrote:
>>>>
>>>> Thank you Jim
>>>>>
>>>>> I wanted a final data frame  after replacing the NA's to "0"
>>>>>
>>>>> x1 =  rbind(unique(preval),mydat)
>>>>> x2 <- x1[is.na(x1)] <- 0
>>>>> x2
>>>>>   but I got this,
>>>>>
>>>>> [1] 0
>>>>>
>>>>> why I am getting this?
>>>>>
>>>>>
>>>>> On Sat, Feb 24, 2018 at 12:17 AM, Jim Lemon <drjimlemon at gmail.com>
>>>>> wrote:
>>>>>
>>>>> Hi Val,
>>>>>> Try this:
>>>>>>
>>>>>> preval<-data.frame(Col1=unique(unlist(mydat[,c("Col2","col3")]))[-1],
>>>>>>   Col2=NA,col3=NA)
>>>>>> rbind(preval,mydat)
>>>>>>
>>>>>> Jim
>>>>>>
>>>>>> On Sat, Feb 24, 2018 at 3:34 PM, Val <valkremk at gmail.com> wrote:
>>>>>>
>>>>>>> Hi All,
>>>>>>>
>>>>>>> I am reading a file as follow,
>>>>>>>
>>>>>>> mydat <- read.table(textConnection("Col1 Col2 col3
>>>>>>> Z2 NA NA
>>>>>>> Z3 X1 NA
>>>>>>> Z4 Y1 W1"),header = TRUE)
>>>>>>>
>>>>>>> 1. "NA" are   missing  should be replace by 0
>>>>>>> 2.  value that are in COl2 and Col3  should be included  in col1
>>>>>>> before
>>>>>>> they appear
>>>>>>> in col2 and col3. So the output data looks like as follow,
>>>>>>>
>>>>>>> X1  0  0
>>>>>>> Y1  0  0
>>>>>>> W1  0  0
>>>>>>> Z2  0  0
>>>>>>> Z3 X1  0
>>>>>>> Z4 Y1 W1
>>>>>>>
>>>>>>> Thank you in advance
>>>>>>>
>>>>>>>          [[alternative HTML version deleted]]
>>>>>>>
>>>>>>> ______________________________________________
>>>>>>> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
>>>>>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>>>>>> PLEASE do read the posting guide http://www.R-project.org/
>>>>>>>
>>>>>> posting-guide.html
>>>>>>
>>>>>>> and provide commented, minimal, self-contained, reproducible code.
>>>>>>>
>>>>>>
>>>>>>
>>>>>          [[alternative HTML version deleted]]
>>>>>
>>>>> ______________________________________________
>>>>> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
>>>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>>>> PLEASE do read the posting guide http://www.R-project.org/
>>>>> posting-guide.html
>>>>> and provide commented, minimal, self-contained, reproducible code.
>>>>>
>>>>>
>>>>         [[alternative HTML version deleted]]
>>>>
>>>> ______________________________________________
>>>> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
>>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>>> PLEASE do read the posting guide http://www.R-project.org/posti
>>>> ng-guide.html
>>>> and provide commented, minimal, self-contained, reproducible code.
>>>>
>>>>
>>>
>>
>
>         [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.



More information about the R-help mailing list