Как прочитать файл паркета в R, не используя пакеты spark? - PullRequest
0 голосов
/ 10 мая 2018

Я мог бы найти много ответов в Интернете, используя sparklyr или различные пакеты свечей, которые на самом деле требуют раскрутки кластера искр, что является накладными расходами.В Python я мог бы найти способ сделать это, используя "pandas.read_parquet" или стрелку Apache в Python - я ищу что-то похожее на это.

Ответы [ 2 ]

0 голосов
/ 09 августа 2019

Вы можете просто использовать пакет со стрелками:

install.packages("arrow")
library(arrow)
read_parquet("myfile.parquet")
0 голосов
/ 20 февраля 2019

С сеткой вы можете использовать панд из python для чтения файлов паркета.Это может избавить вас от необходимости запускать инстанс искры.Может потерять производительность при сериализации, пока apache arrow не выпустит свою версию.Как вышеупомянутый комментарий упоминается.

library(reticulate)
library(dplyr)
pandas <- import("pandas")
read_parquet <- function(path, columns = NULL) {

  path <- path.expand(path)
  path <- normalizePath(path)

  if (!is.null(columns)) columns = as.list(columns)

  xdf <- pandas$read_parquet(path, columns = columns)

  xdf <- as.data.frame(xdf, stringsAsFactors = FALSE)

  dplyr::tbl_df(xdf)

}

read_parquet(PATH_TO_PARQUET_FILE)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...