我试图在 python 中读取镶木地板文件。我使用了镶木地板和 json 导入。我使用了下面的代码,因为我不想使用熊猫。
with open("test.parquet") as fo:
for row in parquet.DictReader(fo):
print(json.dumps(row))
这似乎工作得很好。我想在 R 中实现相同的功能,所以我尝试使用“reticulate”在 R 中使用 python 函数。我使用了以下代码:
library(reticulate)
py <- import_builtins()
pq <- import("parquet")
js <- import("json")
with(py$open("test.parquet") %as% pq_file, {
for (val in pq$DictReader(pq_file)) {
print(js$dumps(val))}})
因为我只是在尝试,所以我尝试了不同的东西,我得到了不同的错误。对于上面的代码,我得到了这个。
Error in for (val in pq$DictReader(pq_file)) { : invalid for() loop sequence
我也试过这个:
with(py$open("test.parquet") %as% pq_file, {
for (val in 1:4) {
print(js$dumps(pq$DictReader(pq_file)$keys()[val]))}})
和错误:
AttributeError: 'generator' object has no attribute 'keys'
我正在尝试使用 reticulate 来读取 R 中的 parquet 文件。或任何其他方式来读取 R 中的 parquet 文件。我根本不想使用 pandas。我也试过pyarrow,但是需要pandas来干预
如果我可以在 R 中将 python 与 Context 或 For 循环一起使用(我认为这不可行,但以防万一),我认为可以做到。如果有人对此有任何了解。让我知道。
谢谢