Google google スプレッドシートまたはフォーム + スプレッドシートを使用して、R ユーザーからの応答を収集し、それをスプレッドシートに送信したいと考えています。
これは最小限の Google フォームです: https://docs.google.com/forms/d/1tz2RPftOLRCQrGSvgJTRELrd9sdIrSZ_kxfoFdHiqD4/viewform
付属のスプレッドシート: https://docs.google.com/spreadsheets/d/1xemHzTdeqgMuGbsP6oqDYuMu4PymBdw7k7kMC_-Dsi8/edit#gid=102827002
Jenny Bryan の googlesheets パッケージを次のように使用すると思いました。
library(googlesheets);library(dplyr)
(my_sheets <- gs_ls())
minresp <- gs_title("minimal (Responses)")
minresp %>% gs_add_row(ws = "dat", input = mtcars[20, 1:2])
うまく機能しますが、コードを含めて他の誰か (つまり、私ではない人) がコードを使用しようとすると:
Error in gs_lookup(., "sheet_title", verbose) :
"minimal (Responsess)" doesn't match sheet_title of any sheet returned by gs_ls() (which should reflect user's Google Sheets home screen).
したがって、ビネットには離れていることがわかります。
# 所有していないシートにアクセスする必要がありますか?
# 知っていればキーでアクセス!
これは、他の人がスプレッドシートにデータを入力できるようにするためのチケットだと思ったので、試しました:
minresp2 <- gs_key("1xemHzTdeqgMuGbsP6oqDYuMu4PymBdw7k7kMC_-Dsi8")
降伏:
Authentication will be used.
Error in gs_lookup(., "sheet_key", verbose) :
"1xemHzTdeqgMuGbsP6oqDYuMu4PymBdw7k7kMC_-Dsi8" doesn't match sheet_key of any sheet returned by gs_ls() (which should reflect user's Google Sheets home screen).
ログインしてGoogle経由で認証されている場合、これはすべて機能しますが、ユーザーがスプレッドシートに追加できるようにするにはどうすればよいですか. どのアプローチ/パッケージを使用するかは気にしません。ユーザーが単にソースを見て URL を取得し、手動で編集するのではなく、関数内で使用してスプレッドシートのみを編集できればよいのですが、それはそれほど問題ではありません。
基本的に、スプレッドシート (または他のデータ形式) で R ユーザーからの応答を収集し、新しいユーザーごとに追加できるようにしたいと考えています。