为什么R中的googledrive库会识别出多个文件,而Drive文件夹中只有一个文件?

Why does the googledrive library in R identifies more than one file with only one file in the Drive folder?

我正在尝试使用 googledrive[=21] 从我的 Google Drive 文件夹(通过 Google Earth Engine 导出到它)下载 .tif 文件=] 图书馆。但是,在调用 map 函数时,出现以下错误:

Error: 'file' identifies more than one Drive file.

我已经成功地使用此代码下载了其他 .tif 文件,没有出现任何错误。为什么会出现此错误,我该如何解决?在Drive文件夹中可以看到(是public),该文件夹只有一个文件,那么为什么'file'识别出多个Drive文件呢?

代码:

library(googledrive)
library(purrr)

## Store the URL to the folder 
folder_url <- "https://drive.google.com/drive/folders/1Qdp0GN7_BZoU70OrpbEL-vIBBxBa1_Db"

## Identify this folder on Google Drive
## let googledrive know this is a file ID or URL, as opposed to file name
folder <- drive_get(as_id(folder_url))

## Identify files in the folder
files <- drive_ls(folder, pattern = "*.tif")

# Download all files in folder
map(files$name, overwrite = T, drive_download)

Google驱动API的方法Files: listreturns你默认一个数组

即使结果只包含一个文件,或者根本不包含任何文件,它仍然是一个数组。

您需要做的就是检索此数组的第一个 (0) 元素。您可以通过使用 Try this API.

进行测试来验证它

我希望 R 中的正确语法类似于 files[0]$name 检索第一个(即使它是唯一的)文件的名称。

Also: You should implement some condition statement to verify that the list of files is not empty before you retrieve the file name.

Google 驱动器允许在同一个文件夹中具有完全相同名称的多个文件。 googledrive 库不接受这个,因此会抛出错误。但是,即使删除了 "double" 个文件,错误也没有解决。 Google Drive 似乎还保留了某种隐藏的 record/cache 文件,即使已删除。只有删除整个文件夹并重新创建它,我才能解决错误。