Let's look at your data frame: > str(daily.sub1) 'data.frame': 9 obs. of 4 variables: $ Trial: Factor w/ 1 level "2": 1 1 1 1 1 1 1 1 1 $ Tanks: Factor w/ 3 levels "a4","c4","h4": 1 1 1 2 2 2 3 3 3 $ Day : Factor w/ 9 levels "10","11","12",..: 4 5 6 7 8 9 1 2 3 $ Wgt : Factor w/ 9 levels "16","17","18",..: 1 2 3 4 5 6 7 8 9
When you did the cbind to get daily, it converted the matrix to character; therefore, when you coerced it to a data frame, everything was read as a factor. What you needed to do was daily <- data.frame(Trial = rep(c(1,2),each=12), Tanks=rep(rep(c("a3","a4","c4","h4"),each=3),2), Day=rep(c(1:12),2), Wgt=c(1:24)) > str(daily) 'data.frame': 24 obs. of 4 variables: $ Trial: num 1 1 1 1 1 1 1 1 1 1 ... $ Tanks: Factor w/ 4 levels "a3","a4","c4",..: 1 1 1 2 2 2 3 3 3 4 ... $ Day : int 1 2 3 4 5 6 7 8 9 10 ... $ Wgt : int 1 2 3 4 5 6 7 8 9 10 ... Then... daily.sub<-subset(daily, subset=Trial==2 & Tanks=="a4"|Trial==2 & Tanks=="c4"|Trial==2 & Tanks=="h4") > str(daily.sub) 'data.frame': 9 obs. of 4 variables: $ Trial: num 2 2 2 2 2 2 2 2 2 $ Tanks: Factor w/ 4 levels "a3","a4","c4",..: 2 2 2 3 3 3 4 4 4 $ Day : int 4 5 6 7 8 9 10 11 12 $ Wgt : int 16 17 18 19 20 21 22 23 24 But you're still not done because Tanks is a factor and subscripts have to be numeric, so daily.sub$tanks <- as.numeric(as.character(daily.sub$Tanks)) and *now* your plot will work... plot(Wgt ~ Day, data = daily.sub, pch=c(2,19,21)[tanks]) the choice of plotting character being determined by the value of tanks. HTH, Dennis On Tue, Feb 2, 2010 at 5:19 PM, Marlin Keith Cox <marlink...@gmail.com>wrote: > I tried the following and still could not get it to work. I understand > your > logic, but cannot get this to work. > > rm(list=ls()) > Trial<-rep(c(1,2),each=12) > Tanks=rep(c("a3","a4","c4","h4"),each=3,2) > Day=rep(c(1:12),2) > Wgt=c(1:24) > daily<-cbind(Trial, Tanks, Day, Wgt) > daily > daily.sub<-subset(daily, subset=Trial==2 & Tanks=="a4"|Trial==2 & > Tanks=="c4"|Trial==2 & Tanks=="h4") > daily.sub1<-as.data.frame(daily.sub) > > x11() > plot(Day, Wgt, pch=c(2,19,21)[Tanks]) > with(daily.sub1,c(2,19,21)[Tanks]) > > On Tue, Feb 2, 2010 at 1:05 PM, Jeff Laake <jeff.la...@noaa.gov> wrote: > > > The problem is with attach. You should have seen an error that the > objects > > are aliased. You have Tanks in your workspace and in the attached > > dataframe. It is using the one in your workspace which is not a factor > > variable. Try: > > > > > > c(2,19,21)[Tanks] > > with(daily.sub1,c(2,19,21)[Tanks]) > > > > Avoid attach and use with which is a temporary attach that won't be > subject > > to that problem. > > > > --jeff > > > > On 2/2/2010 11:51 AM, Marlin Keith Cox wrote: > > > >> Here is a runable program. When I plot Day and Wgt, it graphs all the > >> data > >> points. All I need is daily.sub1 plotted. I also need each "Tanks" to > >> have > >> its own col or pch. When I run it with the line with pch, it gives me > >> nothing. > >> > >> rm(list=ls()) > >> Trial<-rep(c(1,2),each=12) > >> Tanks=rep(c("a3","a4","c4","h4"),each=3,2) > >> Day=rep(c(1:12),2) > >> Wgt=c(1:24) > >> daily<-cbind(Trial, Tanks, Day, Wgt) > >> daily > >> daily.sub<-subset(daily, subset=Trial==2& Tanks=="a4"|Trial==2& > >> Tanks=="c4"|Trial==2& Tanks=="h4") > >> daily.sub1<-as.data.frame(daily.sub) > >> attach(daily.sub1) > >> daily.sub1 > >> x11() > >> plot(Day, Wgt) > >> #plot(Day, Wgt, pch=c(2,19,21)[Tanks]) > >> detach(daily.sub1) > >> > >> > >> > > > > > -- > M. Keith Cox, Ph.D. > Alaska NOAA Fisheries, National Marine Fisheries Service > Auke Bay Laboratories > 17109 Pt. Lena Loop Rd. > Juneau, AK 99801 > keith....@noaa.gov > marlink...@gmail.com > U.S. (907) 789-6603 > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help@r-project.org mailing list > 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@r-project.org mailing list 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.