gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-04 10:41:54 25 4
gpt4 key购买 nike

我正在尝试使用 googledrive 库从我的 Google Drive 文件夹(通过 Google Earth Engine 导出到它)中下载一个 .tif 文件。但是,当调用 map函数,我收到以下错误:

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

我已经设法使用此代码下载了其他 .tif 文件,该代码可以正常工作。为什么我会收到此错误,我该如何解决?正如您在 Drive 文件夹中看到的(它是公开的),该文件夹仅包含一个文件,那么为什么"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 Drive API 的方法Files: list默认情况下返回一个数组

即使结果只包含一个文件,或者根本没有文件 - 它仍然是一个数组。

您需要做的就是检索该数组的第一个 (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.

关于r - 为什么 R 中的 googledrive 库会识别多个文件,而 Drive 文件夹中只有一个文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59896107/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com