68

github から R に CSV を読み込もうとしています:

latent.growth.data <- read.csv("https://github.com/aronlindberg/latent_growth_classes/blob/master/LGC_data.csv")

ただし、これにより次のことがわかります。

Error in file(file, "rt") : cannot open the connection
In addition: Warning message:
In file(file, "rt") : unsupported URL scheme

?read.csv, ?download.file, getURL(奇妙な HTML しか返されませんでした) とデータ インポート マニュアルを試しましたが、それでも動作させる方法がわかりません。

私は何を間違っていますか?

4

10 に答える 10

110

これを試して:

library(RCurl)
x <- getURL("https://raw.github.com/aronlindberg/latent_growth_classes/master/LGC_data.csv")
y <- read.csv(text = x)

2 つの問題があります。

  1. 「生の」テキスト ファイルではなく、Github の表示バージョンにリンクしています (https:\raw.github.com....csv の URL にアクセスして、生のバージョン表示バージョンの違いを確認してください)。
  2. 多くの場合、R では https が問題になるため、パッケージのようなものを使用しRCurlて回避する必要があります。場合によっては (ただし、Github ではありません)、単に https を http に置き換えるだけで問題が解決することがあります。そのため、いつでも最初にそれを試すことができますが、RCurl を使用すると信頼性が高く、余分な入力をしすぎないことがわかります。
于 2013-01-21T15:25:17.720 に答える
26

のドキュメントからurl:

「https://」接続はサポートされていないことに注意してください (Windows ではいくつかの例外があります)。

問題は、R がhttpsURL への接続を許可していないことです。

download.fileで使用できますcurl

download.file("https://raw.github.com/aronlindberg/latent_growth_classes/master/LGC_data.csv", 
    destfile = "/tmp/test.csv", method = "curl")
于 2013-01-21T15:25:12.987 に答える
22

私は R 3.0.2 を使用していますが、このコードでうまくいきます。

urlfile<-'https://raw.github.com/aronlindberg/latent_growth_classes/master/LGC_data.csv'
dsin<-read.csv(urlfile)

そしてこれも

urlfile<-'https://raw.github.com/aronlindberg/latent_growth_classes/master/LGC_data.csv'
dsin<-read.csv(url(urlfile))

編集 (sessionInfo)

R version 3.0.2 (2013-09-25)
Platform: i386-w64-mingw32/i386 (32-bit)

locale:
[1] LC_COLLATE=Polish_Poland.1250  LC_CTYPE=Polish_Poland.1250   
[3] LC_MONETARY=Polish_Poland.1250 LC_NUMERIC=C                  
[5] LC_TIME=Polish_Poland.1250    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
[1] tools_3.0.2
于 2014-03-03T07:36:09.513 に答える
8

質問が非常に古いことに気づきましたが、Google は依然として (少なくとも私にとっては) 上位の結果として報告しているため、2015 年の回答を提供することにしました。

次の非常に単純なソリューションを提供する r-bloggers によって説明されているように、人々は一般にcurlパッケージ (有名なものを含む) に移行しています。httr

library(curl)

x <- read.csv( curl("https://raw.githubusercontent.com/trinker/dummy/master/data/gcircles.csv") )
于 2015-07-02T07:57:57.010 に答える
4

これが私がrioの開発を手伝ってきた理由です。これは基本的に、HTTPS/SSL をサポートし、拡張子からファイルの種類を推測するユニバーサル データ インポート/エクスポート パッケージであり、1 つのインポート関数を使用して基本的に何でも読み取ることができます。

library("rio")

Github から CSV の「生の」URL を取得する場合は、次のように 1 行でロードできますimport

import("https://raw.githubusercontent.com/aronlindberg/latent_growth_classes/master/LGC_data.csv")

結果は data.frame です。

     top100_repository_name   month monthly_increase monthly_begin_at monthly_end_with
1                    Bukkit 2012-03                9              431              440
2                    Bukkit 2012-04               19              438              457
3                    Bukkit 2012-05               19              455              474
4                    Bukkit 2012-06               18              475              493
5                    Bukkit 2012-07               15              492              507
6                    Bukkit 2012-08               50              506              556
...
于 2015-02-25T19:23:23.827 に答える