簡體   English   中英

無法在 R 中打開臨時文件

[英]Trouble opening a tempfile in R

我正在嘗試使用tempfile()從發布在網絡上的 .gz 文件中獲取數據,但未能將存檔寫入我的硬盤驅動器並手動提取所需的文件。 我正在重用以前在類似情況下工作過的代碼,R 可以毫無問題地找到其他臨時文件。

這是我正在使用的代碼:

temp <- tempfile()
download.file("http://unified-democracy-scores.org/files/20140312/z/uds_summary.csv.gz", temp)
UDS <- read.csv(unz(temp, "uds_summary.csv"), stringsAsFactors = FALSE)

這是它拋出的錯誤:

Error in open.connection(file, "rt") : cannot open the connection
In addition: Warning message:
In open.connection(file, "rt") :
  cannot open zip file 'C:\Users\Jay\AppData\Local\Temp\RtmpKs4ZWm\file100877485507'

我嘗試將download.file()的模式設置為其他選項(例如, mode="wb" )無濟於事。 在該步驟中改變方法也是如此。 如果我將存檔下載到我的硬盤驅動器並使用我的代碼第三行中使用的名稱手動提取 .csv,它讀取正常。

任何想法我在這里做錯了什么?

使用gzfile而不是unz

UDS <- read.csv(gzfile(temp), stringsAsFactors = FALSE)

這給出了輸出:

head(UDS)
#>         country year cowcode     mean        sd   median    pct025
#> 1 United States 1946       2 1.086431 0.2962744 1.072743 0.5424734
#> 2 United States 1947       2 1.094423 0.2989538 1.077987 0.5516301
#> 3 United States 1948       2 1.050040 0.2604016 1.038927 0.5642550
#> 4 United States 1949       2 1.039801 0.2585845 1.031048 0.5628056
#> 5 United States 1950       2 1.084971 0.2449264 1.071610 0.6280569
#> 6 United States 1951       2 1.043591 0.2551857 1.033722 0.5695530
#>     pct975
#> 1 1.694063
#> 2 1.719771
#> 3 1.588783
#> 4 1.567912
#> 5 1.589253
#> 6 1.577150

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM