2013-06-25 109 views
0

在Unix終端中,可以使用「less」或「more」命令逐頁查看文本文件。我有一個300行的字符矢量,我想逐頁查看它。你知道R中類似的功能嗎?有沒有類似於unix命令的R命令?

+0

'head(dat)'或'tail(dat)'? – zx8754

+0

是的,但只顯示第一行和最後一行。 – PAC

+1

嘗試下面的一些解決方案:http://stackoverflow.com/questions/3837520/how-to-prevent-the-output-of-r-to-scroll-away-in-bash 'page(dat,方法=「打印」)'看起來很有希望 –

回答

1

如果你指的是物體在R環境(而不是一個文件,你的驅動器上),

你可能會喜歡我的小玩具在這裏:

short <- function(x=seq(1,20),numel=4,skipel=0,ynam=deparse(substitute(x))) { 
ynam<-as.character(ynam) 
#clean up spaces 
ynam<-gsub(" ","",ynam) 
#unlist goes by columns, so transpose to get what's expected 
if(is.list(x)) x<-unlist(t(x)) 
if(2*numel >= length(x)) { 
    print(x) 
    } 
    else { 
     frist=1+skipel 
     last=numel+skipel 
     cat(paste(ynam,'[',frist,'] thru ',ynam,'[',last,']\n',sep="")) 
     print(x[frist:last]) 
     cat(' ... \n') 
     cat(paste(ynam,'[',length(x)-numel-skipel+1,'] thru ', ynam, '[', length(x)-skipel,']\n',sep="")) 
     print(x[(length(x)-numel-skipel+1):(length(x)-skipel)]) 
     } 
} 

blahblah版權屬於我,不是迪士尼免費使用,重複使用,編輯,灑在你的Wheaties上等。

+0

這是如何工作的。它看起來類似於head()。我錯了嗎 ? – PAC

+0

@PAC yes它是相似的,但'numel'指定返回的元素數量,'skipel'讓你從任何地方開始(不只是在頂部),並且它從數據的開始和結束都返回'numel'元素。如果您只想返回「head」xor「tail」,則可以輕鬆地對代碼進行修改。 –