2017-06-29 46 views
0

我想用reticulate重現此Python代碼中R:使用網紋調用文件功能

file("my.png").read() 

在RI已經試過這樣:

library(reticulate) 
funcs <- import_builtins() 
funcs$file("my.png").read() 

這個錯誤說funcs$file不是功能。

我不清楚如何將文件路徑傳遞給Python file函數。

任何指導將不勝感激。

回答

1

以下是使用reticulate和Python內置函數讀取文件的一個非常簡單(和「原始」)示例。
myfile.txt含量:

ds y 
"2017-05-23 08:07:00" 21.16641 
"2017-05-23 08:07:10" 16.79345 
"2017-05-23 08:07:20" 16.40846 
"2017-05-23 08:07:30" 16.24653 
"2017-05-23 08:07:40" 16.14694 
"2017-05-23 08:07:50" 15.89552 

和代碼讀取該文件是:

library(reticulate) 
funcs <- import_builtins() 

fl <- funcs$open("myfile.txt", "r") 
txt <- fl$readlines()  
fl$close() 

cat(txt) 

# ds y 
# "2017-05-23 08:07:00" 21.16641 
# "2017-05-23 08:07:10" 16.79345 
# "2017-05-23 08:07:20" 16.40846 
# "2017-05-23 08:07:30" 16.24653 
# "2017-05-23 08:07:40" 16.14694 
# "2017-05-23 08:07:50" 15.89552 

使用的替代解決方案的內置file函數是:

fl <- funcs$open("myfile.txt", "r") 
txt <- funcs$file$readlines(fl) 
fl$close()