HW1F16sln. (a) > tmp = c(rep(c(3,7,6,9), 25), seq(273,0,by=-3)) > LongI = NULL > for (i in 1:10) LongI=c(LongI, if(i %% 2 ==1) tmp else rev(tmp)) > c(minmax=range(LongI), length(LongI), freq6=sum(LongI==6)) minmax1 minmax2 freq6 0 273 1920 260 > LongI[100,101,192,193,194] [1] 9 273 0 0 3 (b) > LongI[c(777,1000)] [1] 3 117 ### OK, since eg length(tmp) is 192, so that 4 such seq's end in position ### 4*192 = 768, and the next 9 entries are 3,6,7,9,3,6,7,9,3 the ### last of which is the 777'th vector entry. (c) > chstr = paste(as.character(LongI),collapse="") > digvec = as.numeric(unlist(strsplit(chvec,sep=""))) > table(digvec) 0 1 2 3 4 5 6 7 8 9 160 520 440 450 190 190 440 420 160 410 > c(length(chstr), nchar(chstr)) [1] 1 3380 > length(digvec) [1] 3380 (d) > tmp = sin(3*(1:120)^2 - 7) sumtmp = cumsum(tmp) inds = pmax(1,(3-sumtmp) %/% 2) Dfr = data.frame(TorF = (tmp>0), Sums = sumtmp, Grades = c("A","B","C","D","F")[inds], stringsAsFactors=F) > Dfr = data.frame(TorF = (tmp>0), Sums = sumtmp, Grades = c("A","B","C","D","F")[inds]) > Dfr[1:3,] TorF Sums Grades 1 TRUE 0.7568025 A 2 FALSE -0.2021218 A 3 TRUE 0.7108235 A > sapply(Dfr,class) TorF Sums Grades "logical" "numeric" "character" > table(inds) inds 1 2 3 4 5 24 24 33 33 6 > sum(sumtmp <= -7) [1] 6