评论

收藏

[R语言] R语言中使用Python程序读取hdfs上的数据

编程语言 编程语言 发布于:2021-07-01 23:25 | 阅读数:521 | 评论:0

  前言:
  为了实现R和HBase连接,最近一直进行各种的编译,由于下午女朋友问我R语言数据清洗的问题,我果断推荐它使用sqldf这个包。这样R语言就能使用SQL语句。同理,我想R语言中是否也能使用Python程序呢?于是我想使用Python程序在R中应该是能进行操作的,最终网上找到了reticulate包。该包让R调用python的语法程序变得极为简单。
reticulate包
安装reticulate包
>install.packages("reticulate")
加载reticulate包
>library(reticulate)
检查系统是否安装了python
>py_available()
FALSE的话需要先安装Python
导入python的安装包
>os <- import(“os”)
> os$getcwd()
[1] "/mnt"
调用切换交互模式到python
>repl_python()  #交互式使用python
Python 3.5.2 (/opt/anaconda3/bin/python)
Reticulate 1.10 REPL -- A Python interpreter in R.
>>>
>>>
>>>exit # 退出
>
调用查看在python中运行的程序结果
>py$a
载入Python脚本,一键运行
source_python("test.py")
  进入到这里,我想python和任意软件的接口,R应该是也可以实现了!下一步R交互式python连接hdfs/hive/hbase。
>>> from hdfs import *
>>> client = Client("http://192.168.14.101:50070")
>>> client=Client("http://192.168.14.101:50070",root="/",timeout=100,session=False)
>>> client.list("/")
  ['app-logs', 'apps', 'ats', 'hdp', 'hive', 'mapred', 'mr-history', 'spark-history', 'spark2-history', 'tmp', 'user']

  
关注下面的标签,发现更多相似文章