Rの開発ツールをインストールしてデジタル化する方法は?


8

私が必要とするデベロッパーツールを、私は、関数必要があるためinstall_githubを非CRANパッケージをインストールするデジタイズを ここに。私がインストールRした

sudo apt-get install r-cran-robustbase

terdonの答えが提案するように、私はすぐにRのパッケージをインストールしませんでしたが、許可を修正することができました:

sudo chmod 755 /usr/lib/R/site-library/

これがデフォルトの設定だと思います。次に、rcsの回答が示すように、インストールを成功させるためにdevtoolstpoisot/digitizeただし

sudo apt-get install libssl-dev
sudo apt-get install libcurl4-openssl-dev
R
install.packages('httr')
install.packages('git2r')
install.packages('devtools')
library(devtools)
install.packages('readbitmap')
install_github('tpoisot/digitize')

最後のコマンドの出力は

Skipping install for github remote, the SHA1 (d16e28b9) has not changed since last install.
  Use `force = TRUE` to force installation

するがinstall_github('tpoisot/digitize', force = TRUE)、あなたは得るかもしれない

...
'/usr/lib/R/bin/R' --no-site-file --no-environ --no-save --no-restore --quiet  \
  CMD INSTALL '/tmp/RtmpX8eOLX/devtools57475d25a113/tpoisot-digitize-d16e28b'  \
  --library='/usr/local/lib/R/site-library' --install-tests 

Error: ERROR: no permission to install to directory ‘/usr/local/lib/R/site-library’
Error: Command failed (1)

なしでデジタル化をインストールする方法を見つけることができませんでしたsudo。だからsudo R、同じことを繰り返すと、

...
'/usr/lib/R/bin/R' --no-site-file --no-environ --no-save --no-restore --quiet  \
  CMD INSTALL '/tmp/RtmpAlAT4e/devtools57e864e8c490/tpoisot-digitize-d16e28b'  \
  --library='/usr/local/lib/R/site-library' --install-tests 

* installing *source* package ‘digitize’ ...
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded
* DONE (digitize)

なしで作業masiするには、既存のグループstaffに追加します。フレッシュインストールでも必要ですsudoR

sudo usermod -a -G staff masi

インストールのテスト

  1. こちらのガイドに従います。私は開始R$HOME/Pictures/せずにsudo、そのテスト画像を使用してここに

  2. マウスで軸の4つの点を選択します cal = digitize::ReadAndCal('Rintro-snail1.jpg')

ここに画像の説明を入力してください

  1. 実行しdata.points = digitize::DigitData(col = 'red')て、手動であなたのデータポイントがあるポイントを選択

ここに画像の説明を入力してください

  1. 2回目のクリックでプロットウィンドウを閉じます。

  2. df = digitize::Calibrate(data.points, cal, 0.1, 0.4, 0.0, 0.6)て見てdf

           x  y
    1  71.50 NA
    2  65.65 NA
    ...
    24 26.80 NA
    

    している head(df)

          x  y
    1 71.50 NA
    2 65.65 NA
    3 64.60 NA
    4 60.85 NA
    5 59.05 NA
    6 58.15 NA
    

インストールの詳細

  • Rおよびなしsudo

    > .Library
    [1] "/usr/lib/R/library"
    > > .libPaths()
    [1] "/usr/local/lib/R/site-library" "/usr/lib/R/site-library"      
    [3] "/usr/lib/R/library"  
    
  • ls /usr/lib/R/library/リストされていないコマンドdevtools。どうして?

    base       compiler   grid        methods   rpart    survival
    boot       datasets   KernSmooth  mgcv      spatial  tcltk
    class      foreign    lattice     nlme      splines  tools
    cluster    graphics   MASS        nnet      stats    translations
    codetools  grDevices  Matrix      parallel  stats4   utils
    
  • コマンド ls -la /usr/local/lib/R/

    total 12
    drwxrwsr-x 3 root staff 4096 touko 19 22:25 .
    drwxr-xr-x 5 root root  4096 touko 19 22:25 ..
    drwxrwsr-x 2 root staff 4096 touko 19 22:25 site-library
    
  • コマンド ls -la /usr/local/lib/

    total 20
    drwxr-xr-x  5 root root  4096 touko 19 22:25 .
    drwxr-xr-x 14 root root  4096 touko 19 22:13 ..
    drwxrwsr-x  4 root staff 4096 huhti 21 01:13 python2.7
    drwxrwsr-x  3 root staff 4096 huhti 21 01:08 python3.5
    drwxrwsr-x  3 root staff 4096 touko 19 22:25 R
    
  • コマンド R_LIBS_USER="/usr/local/lib/R/site-library/" R

     R version 3.2.3 (2015-12-10) -- "Wooden Christmas-Tree"
     Copyright (C) 2015 The R Foundation for Statistical Computing
     Platform: x86_64-pc-linux-gnu (64-bit)
     ...
    
  • library(devtools) ロードされます

微分ツール

以前のバグの理由

  • クリーンシステムなし:14.04、15.10などからアップグレードされたシステム
  • 前のもののために権限/所有者を台無しにしました。
  • プロセスの自分のミス。
  • 障害が発生した場合のバックアップはありません。
  • ...
  • ドキュメントがありません

システム:Ubuntu 16.04 64ビットのクリーンインストール
ハードウェア:Dell PC 2013、Macbook Air 2013-mid、...


私のArchシステムではこれを再現できません。をdevtools介してインストールしsudo Rlibrary(devtools)非sudo Rセッションから実行させます。i).Library通常のRセッションから実行し、ii)sudo Rおよびiii)devtoolsこれらのコマンドによって提供されるパスにサブディレクトリがあるかどうかの出力を追加してください。私のシステムでは、にあり/usr/lib64/R/library/devtools/ます。
terdon

OK、devtoolsサブディレクトリはあり/usr/lib/R/libraryますか?
terdon

私の推測では、インストールは実際には成功していませんでした。もう一度試して、出力に細心の注意を払ってください。あなたがた、本当に実行することができlibrary(devtools)、正常にライブラリをロード?
terdon

わかりました、私は問題が何であるか知っています。もう1つ.libPaths()、Rから実行すると何が得られますか?
terdon

1
ああ、そうですか、そしてdevtoolsサブディレクトリはあり/usr/local/lib/R/site-libraryますか?あなたはおそらくそうします。もしそうなら、私の(新しく)更新された答えを見てください。
terdon

回答:


11

httropensslシステム要件として必要なパッケージをインポートしますlibssl-devsudo apt install libssl-dev

------------------------- ANTICONF ERROR ---------------------------
Configuration failed because openssl was not found. Try installing:
 * deb: libssl-dev (Debian, Ubuntu, etc)
...

curlパッケージには、システム要件として必要ですlibcurl4-openssl-dev

------------------------- ANTICONF ERROR ---------------------------
Configuration failed because libcurl was not found. Try installing:
 * deb: libcurl4-openssl-dev (Debian, Ubuntu, etc)
...

したがって、インストールするには、次のコマンドを実行する必要があります。

sudo apt-get install libssl-dev
sudo apt-get install libcurl4-openssl-dev

次に、Rシェルを次のように起動しますsudo R

install.packages('httr')
install.packages('git2r')
install.packages('devtools')
library(devtools)
install_github('tpoisot/digitize')

良い出発点だったので、私はこの答えを受け入れます。後devtools、必要install.packages('readbitmap')です、最終版の本体をご覧ください。
レオ・レオポルド・ヘルツ준 영

2

原則として、システムディレクトリの権限を変更するだけではありません。これがrootアクセスの目的です。権限を見つけた方法で戻し、次回の実行時sudo R、およびinstall.packages結果のルートRシェルから権限を戻します。

ここで、インストールできない理由は、表示される出力のすぐそこにあります。

ERROR: dependencies ‘httr’, ‘git2r’ are not available for package ‘devtools’

どうやら、RCSで説明したように、Ubuntuの上で、あなたがインストールする必要がありますlibssl-devし、libcurl4-openssl-dev最初。


次の問題は、ルートユーザーのRインストールが/usr/local/lib/R/site-libraryの出力の最初のディレクトリとして.libPathsあり、通常のユーザーのパスにはないことです。これはルートの最初のエントリなので、ライブラリがインストールされた場所です。

 Installing package into ‘/usr/local/lib/R/site-library’
(as ‘lib’ is unspecified)

したがって、簡単な解決策は、というファイルを作成して、~/.Rprofile次の行を追加することです。

.libPaths("/usr/local/lib/R/site-library/")

あるいは、またはさらに、次のような行を含めることができます

   .libPaths("/home/masi/Rlibs")

これにより、ライブラリをディレクトリにインストールし/home/masi/Rlibs (任意の名前を選択できます)、今後はの必要性を回避できsudo Rます。


または、環境変数R_LIBS_USER/usr/local/lib/R/site-library/(または/home/masi/Rlibsライブラリがインストールされている場所に)に設定することもできます。この行をあなたに追加してください~/.profile

R_LIBS_USER=/usr/local/lib/R/site-library/

@マシは上記の私の提案を試しましたか?これが問題であることをテストするには、を実行R_LIBS_USER="/usr/local/lib/R/site-library/" Rしてから、Rでを実行しlibrary(devtools)ます。
terdon

.libPaths("/home/masi/Rlibs")その後実行する.libPaths("/usr/local/lib/R/site-library/")と元の設定に置き換わります。ライブラリディレクトリを追加する場合は、次のようにする必要があります.libPaths(c(.libPaths(), "/home/masi/Rlibs") )
42-
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.