You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在GCP DataProc的Jupyter Lab R内核中读取数据并运行线性回归

在Jupyter Lab的R内核中读取GCS数据并运行回归模型

以下是两种适配场景的解决方案,分别对应贴近PySpark的Spark分布式环境和纯R本地处理环境:

一、用sparklyr对接Spark读取GCS数据(与PySpark逻辑一致)

如果希望延续Spark的分布式处理能力,推荐使用sparklyr包:

  1. 安装并初始化Spark连接
# 首次运行安装sparklyr
install.packages("sparklyr")
library(sparklyr)

# 初始化Spark连接,master参数按环境调整(本地填"local",集群填对应地址)
sc <- spark_connect(master = "local")
  1. 配置GCS访问权限
    本地环境需通过服务账号密钥认证;GCP云端环境(如Vertex AI Workbench)可跳过此步骤(默认使用环境凭据):
# 设置服务账号密钥路径
Sys.setenv("GOOGLE_APPLICATION_CREDENTIALS" = "/path/to/your/service-account-key.json")
  1. 读取GCS上的JSON文件
# 语法与PySpark高度相似
df_business <- spark_read_json(sc, path = "gs://[bucket_name]/[filename].json")

二、纯R环境读取GCS数据(无需Spark)

如果仅需本地处理,可使用googleCloudStorageR直接下载并读取:

  1. 安装依赖包
install.packages(c("googleCloudStorageR", "jsonlite"))
library(googleCloudStorageR)
library(jsonlite)
  1. 配置GCS认证(同上述Spark场景的认证规则)
Sys.setenv("GOOGLE_APPLICATION_CREDENTIALS" = "/path/to/your/service-account-key.json")
  1. 下载并读取JSON数据
# 临时存储下载的文件
temp_file <- tempfile(fileext = ".json")

# 从GCS下载文件到本地临时路径
gcs_get_object("[filename].json", bucket = "[bucket_name]", saveToDisk = temp_file)

# 读取JSON为R数据框,多行JSON可改用stream_in(file(temp_file))
df_business <- fromJSON(temp_file, simplifyDataFrame = TRUE)

三、运行回归模型示例

场景1:Spark环境下用MLlib运行回归

library(dplyr)

# 线性回归示例,替换target_column和特征列为你的实际列名
lr_model <- ml_linear_regression(
  df_business,
  label = "target_column",
  features = c("feature1", "feature2", "feature3")
)

# 查看模型结果
summary(lr_model)

场景2:纯R环境下用基础包运行回归

# 基础R线性回归,替换列名为你的实际字段
lr_model <- lm(target_column ~ feature1 + feature2 + feature3, data = df_business)

# 输出模型摘要
summary(lr_model)

内容的提问来源于stack exchange,提问作者Tushar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 03:25:28