如何将RStudio连接到OneDrive中存储的Excel文件?
可实现OneDrive电子表格数据读取的R包
你可以根据自己的使用场景选择以下方案:
Microsoft365R:微软官方适配Microsoft 365生态的R包,是目前云环境直接读取的首选方案。支持OAuth2授权访问个人/企业版OneDrive内的文件,无需提前同步到本地,可直接定位目标电子表格、选择指定工作表、限定读取范围,完全满足提取ID数据的需求。极简使用示例如下:# 安装加载包 install.packages("Microsoft365R") library(Microsoft365R) # 授权登录个人OneDrive,企业版可替换为 get_business_onedrive() od <- get_personal_onedrive() # 定位目标文件并读取 xlsx_file <- od$get_item("你的文件存储路径/目标表格.xlsx") df <- xlsx_file$load(sheet = "工作表名") # 提取所需ID列 target_ids <- df$目标ID列名- 轻量
onedrive包:授权逻辑更简单的第三方轻量包,基础文件读写功能完整,适合小体积表格的快速读取操作。 - 本地同步场景:如果已经开启OneDrive本地同步,可直接使用常规表格读取包,读取xlsx用
openxlsx、readxl,读取csv用readr::read_csv(),直接访问本地同步目录下的文件即可,无需额外云授权。
DBI包对OneDrive的支持说明
DBI是R语言面向关系型数据库设计的统一连接接口规范,仅适配数据库类存储介质,OneDrive属于云文件存储服务,不属于关系型数据库范畴,因此DBI原生不支持直接连接OneDrive。如果需要用类SQL语法提取ID,可以在把表格读取为内存data.frame后,使用sqldf包执行SQL查询,或者用dplyr的函数做筛选提取。
内容的提问来源于stack exchange,提问作者cmar
相关产品推荐
相关产品推荐

