2015-07-10 147 views
1

我正在改進我的R技能,重建他們在r-博客上做的一些令人驚歎的事情。現在我試圖重現這一點: http://wiekvoet.blogspot.nl/2015/06/deaths-in-netherlands-by-cause-and-age.html。這個練習吧相關數據集可以在這裏找到:理解困難read.csv代碼

http://statline.cbs.nl/Statweb/publication/?VW=D&DM=SLNL&PA=7052_95&D1=0-1%2c7%2c30-31%2c34%2c38%2c42%2c49%2c56%2c62-63%2c66%2c69-71%2c75%2c79%2c92&D2=0&D3=0&D4=0%2c10%2c20%2c30%2c40%2c50%2c60%2c63-64&HD=150710-0924&HDR=G1%2cG2%2cG3&STB=T

如果我潛水到代碼(在第一個鏈接的底部)和正在運行到這一段代碼:

r1 <- read.csv(sep=';',header=FALSE, 
    col.names=c('Causes','Causes2','Age','year','aantal','count'), 
    na.strings='-',text=txtlines[3:length(txtlines)]) %>% 
select(.,-aantal,-Causes2) 

有人能幫我分開這裏採取的步驟嗎?

回答

2

下面是對您的示例read.csv()調用中每行的說明。請注意,最後一個參數text的分配很複雜,取決於您上面給出的鏈接中的腳本。從高位開始,他首先從包含字符串"Centraal"的文件"Overledenen__doodsoo_170615161506.csv"的所有行中讀取,僅使用該過濾集合中的第三行到最後一行。這些線路還有一個額外的步驟。

r1 <- read.csv(# columns separate by semi-colon 
       sep=';', 
       # first row is data (i.e. is NOT a header) 
       header=FALSE, 
       # names of the six columns 
       col.names=c('Causes','Causes2','Age','year','aantal','count'), 
       # treat hyphen as NA 
       na.strings='-', 
       # read from third line to final line of the original input 
       # Overledenen__doodsoo_170615161506.csv, after some 
       # filtering has been applied 
       text=txtlines[3:length(txtlines)]) %>% select(.,-aantal,-Causes2) 
+0

甜,非常感謝! –

2

read.csv,讀取csv文件,用分隔符「;」分隔列。 這樣一個像這樣的輸入a; b; c將被分隔爲:第一列= a,第二= b,第三= c

header = FALSE - >它指定在給出的原始文件中沒有標題。

col.names分配列出名稱的欄r中

na.strings = ' - ' 代替NA值與 ' - '

文本= txtlines [3:長度(txtlines)])從位置3讀直到結束。

%select(。, - aantal,-Causes2)過濾數據幀