.searchRpackages<-function(keyword="haha"){ "Objective: search R packages by a given keyword Example #1>.searchRpackages # see this menu Example #2>.searchRpackages() # same Example #3:> .sRp # a short-cut Example #4 > .sRp('portfolio') Package Version 2996 CombinePortfolio 0.4 4615 DOSPortfolio 0.1.0 6455 fPortfolio 4023.84 8233 HierPortfolios 1.0.1 8247 highOrderPortfolios 0.1.1 14182 PolicyPortfolios 0.3 14282 portfolio 0.5-3 14283 portfolio.optimization 1.0-0 14284 PortfolioAnalytics 2.1.0 14285 portfolioBacktest 0.4.1 14286 PortfolioOptim 1.1.1 16253 riskParityPortfolio 0.2.2 16254 RiskPortfolios 2.1.7 16757 rportfolio 0.0.3 Note 1: try different kewyword Note 2: rm(.allRpackages) ";.zsearchRpackages(keyword)} .sRp<<-.searchRpackages .zsearchRpackages<-function(keyword){ if(keyword=="haha"){ print(.sRp) }else{ if(exists('.allRpackages')==FALSE){ loc<-"http://cran.us.r-project.org" x<-available.packages(repos =loc) x2<-data.frame(x[,1:2]) rownames(x2)<-NULL .allRpackages<<-x2 } a<-grep(toupper(keyword),toupper(.allRpackages$Package)) b<-.allRpackages[a,] rownames(b)<-NULL print(b) } }