RStudio: Excel ファイルのアップロード中に問題が発生しました。「'pkgconfig' というパッケージがありません」

RStudio: Excel ファイルのアップロード中に問題が発生しました。「'pkgconfig' というパッケージがありません」

仕事中に Excel スプレッドシートを RStudio にインポートして作業することができたので、同じスプレッドシートを自分宛にメールで送信して自宅でも作業することにしました。Excel ファイルをダウンロードして自宅の RStudio 環境にインポートしようとすると、次のエラー メッセージが表示されます。

「これは有効な Excel ファイルですか? 'pkgconfig' というパッケージはありません」

R と RStudio を新規インストールし、pkgconfig をインストールして、できるだけ多くのパッケージを更新してみましたが、それでもこのエラー メッセージが表示されます。

また、Excel ファイルを .csv に変換しようとしましたが、「'pkgconfig' というパッケージはありません」という同様のエラー メッセージが表示されました。

このコードを試すと:

ライブラリ(readxl)

財務スプレッドシート <- read_excel("財務スプレッドシート.xlsx")

私は受け取ります:

loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]) でエラーが発生しました: 'pkgconfig' というパッケージがありません

私はこの言語とソフトウェアにかなり不慣れなので、何か明らかなことを見落としている可能性があると感じています。ご協力いただければ幸いです。

答え1

https://stackoverflow.com/questions/16758129/error-in-loadnamespacename-there-is-no-package-called-rcpp

これは実際に私の質問への答えでした! どうやら R は、パッケージを取得しようとしている場所とは別の場所にパッケージを保存していたようです。

答え2

  • 問題の一部はpkgconfigがインストールされていなかったことだった
  • また、Windows では、現在のディレクトリが頻繁に変更されるため、これに依存してはいけません。if ステートメントを file.exists(fileNamePath) などと組み合わせてテストを実行できます。
  • read_excel にはパラメータを設定する必要があります。パスはファイル名パスを指す必要があります。

....
  #install up required packages
install.packages("pkgconfig")
install.packages("Rcpp")
install.packages("readxl")

  #load up required packages
library(pkgconfig)
library(Rcpp)
library(readxl)

  #load up an excel spreadsheet into a variable object called datasets
filePath <- "C:/.../extdata/evaluation/"

fileName <- 'GPW Detailed Tables March 2019 - STP.xlsx'
fileNamePath <- paste0(filePath, fileName)

  #TEST FILE is where you think it is
file.exists(fileNamePath)

#read_excel(datasets)
#FinancialSpreadsheet <- read_excel("FinancialSpreadsheet.xlsx")

#return data into a tibble Data Frame
datasets <- read_xlsx(path = fileNamePath, 
                      sheet = '1a', 
                      range = "D18:L26")

#return data result to the terminal screen
read_excel(path = fileNamePath, 
           sheet = '1a', 
           range = "D18:L26")
....

私のボックスでスプレッドシートを使用した O/P の例

....

> fileNamePath <- paste0(filePath, fileName)
> file.exists(fileNamePath)
[1] TRUE
> datasets <- read_xlsx(path = fileNamePath, 
+                       sheet = '1a', 
+                       range = "D18:L26")
New names:
* `` -> ...2
* `` -> ...3
> 

> read_excel(path = fileNamePath, 
+            sheet = '1a', 
+            range = "D18:L26")
New names:
* `` -> ...2
* `` -> ...3
# A tibble: 8 x 9
  `Lancashire and South C~ ...2  ...3               `1263` `689` `255` `8`   `185` `145`
  <chr>                    <lgl> <chr>               <dbl> <dbl> <dbl> <chr> <dbl> <dbl>
1 00Q                      NA    NHS Blackburn wit~    110    65    19 -        11    16
2 00R                      NA    NHS Blackpool CCG      97    56    16 1        17     8
3 00X                      NA    NHS Chorley and S~    125    59    33 1        18    14
4 01A                      NA    NHS East Lancashi~    313   153    61 2        41    63
5 01E                      NA    NHS Greater Prest~    148    68    35 2        32    13
6 01K                      NA    NHS Morecambe Bay~    279   176    60 2        34     8
7 02G                      NA    NHS West Lancashi~     72    42    10 -         8    13
8 02M                      NA    NHS Fylde and Wyr~    130    71    23 -        24    13
> 

....

関連情報