从Google Cloud Storage将CSV读入Rstudio

时间:2019-10-25 14:47:34

标签: r google-cloud-storage read.csv

我想使用类似于

的功能从Google云存储中读取csv文件
  

read.csv。

我使用了库 googleCloudStorageR ,但找不到该函数。我不想下载它,我只想在像数据框这样的环境中阅读它。

2 个答案:

答案 0 :(得分:0)

我尝试使用as.data.frame()函数运行示例csv文件。

为了运行此代码段,请确保已安装(install.packages(“ data.table”))并包含了库库(“ data.table”) 另外,请确保在as.data.frame()函数中包含fread()以便从其位置读取文件。

这是我运行并设法显示我的数据集的数据框的代码段:

library(“data.table”)

MyData <- as.data.frame(fread(file="$FILE_PATH",header=TRUE, sep = ','))

print(MyData)

使用TensorFlow读取数据:

还有另一种方法,您可以使用TensorFlow API从云存储读取csv。我假设您是从存储桶访问此数据?首先,您需要安装“ readr”和“ cloudml”软件包才能使这些功能正常工作。然后,您需要使用gs_data_dir(“ gs:// your-bucket-name”)并指定文件路径file.path(data_dir,“ something.csv”)。然后,您需要使用 read_csv (file.path(data_dir,“ something.csv”))从文件路径读取数据。如果您希望将其格式化为数据框,则外观应如下所示。

library(“data.table”)
library(cloudml)
library(readr)

data_dir <- gs_data_dir(“gs://your-bucket-name”)

MyData <- as.data.frame(read_csv(file.path(data_dir, “something.csv”)))

print(MyData)

确保您已正确验证对存储的访问权限

link

中的更多信息

答案 1 :(得分:0)

如果您下载.csv文件,则默认情况下googleCloudStorageR会通过write.csv将其放入data.frame中-您可以通过指定saveToDisk

关闭行为
# will make a data.frame
gcs_get_object("mtcars.csv")

# save to disk as a CSV
gcs_get_object("mtcars.csv", saveToDisk = "mtcars.csv")

您可以通过parseFunction来提供自己的解析函数

## default gives a warning about missing column name.
## custom parse function to suppress warning
f <- function(object){
  suppressWarnings(httr::content(object, encoding = "UTF-8"))
}

## get mtcars csv with custom parse function.
gcs_get_object("mtcars.csv", parseFunction = f)