社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

如何在 Rstudio 中使用 python 语言 (图文详解)

生信菜鸟团 • 4 年前 • 1801 次点击  

一直以来我们学习、测试python都会提到 Pycharm,不仅好用,还支持使用 R 语言。

这是pycharm的界面 ↑↑↑

那经典的 Rstudio呢?

之前看到Y叔提到 好用的Python IDE 是 Rstudio,顺势搜索一番发现,有点意思。

熟悉的界面

熟悉的界面,直接在新建中选择 Python Script即可。

直接运行一段测试代码,如果是从来没有进行过操作的,Rstudio 会默认下载 Miniconda进行环境搭建及包管理。

环境配置

1、安装python运行环境,推荐Anaconda。
https://www.anaconda.com/distribution/
2、安装R与Rstudio
R官网:https://www.r-project.org/
官方网站:https://www.rstudio.com/
3、安装reticulate包。

install.packages("reticulate")
install.packages("Rcpp")

在R中运行python包都要通过这个进行下载安装,可以理解为一个R-Python接口

测试安装环境

#加载reticulate包
library(reticulate)
#检查您的系统是否安装过Python,安装过为TRUE
py_available()
#选择python版本
use_python("/anaconda3/bin/python")
#指定包含Python virtualenv的目录
use_virtualenv()  
#指定Conda环境的名称
use_condaenv()  


然后要在console中去输入代码,,或者通过以下的方法进行,代码不够精简,不推荐。

library(reticulate)
os "os")
os$listdir() #查看文件
os$getcwd() #返回工作路径
os$chdir("../Desktop/"#修改工作路径

py_install(packages = "numpy"#安装numpy
numpy #加载numpy
y 1:4, c(22)) 
x #构建数组

安装python包

如果在尝试中出现错误,可能是由于conda环境等造成的。根据系统不同而分为两种不同的操作:对linux、mac是使用virtualenv;而Windows使用Anaconda。

交互式使用Python

#启动python命令行
repl_python()
-----------------
# 输入python代码
import pandas as pd
# 载入数据集
travel = pd.read_excel(“text.xlsx”)
# 显示数据集的行列数
travel.shape
# 获得R中所创建的对象mydata
r.mydata.describe()
pd.isnull(r.mydata.speed)
# 回到R
exit
-----------------
# py object获取python里的对象t
summary(py$t)

这样就可以使用Pandas读取和操作数据,然后使用ggplot2轻松绘制Pandas数据框,虽然python中也有ggplot2相应的绘图方式。

简单绘图测试

  • 方法一:

    使用R包,然后直接在Rscript中绘制:

library(reticulate)
repl_python()
import numpy as np
import matplotlib.pyplot as plt

size = 3
x = np.arange(size)
a = [364]
a_SD = [10.51.5]
b = [473]
b_SD = [0.512]

total_width, n = 0.82
width = total_width / n
x = x - (total_width - width) / 2
labels = ['Trial 1' 'Trial 2''Trial 3']

plt.bar(x, a,  width=width, yerr = a_SD, tick_label=labels, label='Control')
plt.bar(x + width, b, width=width, yerr = b_SD, tick_label=labels ,label='Experimental')

plt.legend()
plt.show()
exit
  • 方法二:

    在 Python script中直接运行

当然,支持Rstudio的快捷键。

Rmarkdown

reticulate包含一个用于R Markdown的Python引擎,具有以下功能:

1)可在R会话中嵌入的单个Python会话中,运行Python块。同时Python块之间的共享变量/状态。

2)可打印Python输出,包括matplotlib的图形输出。

3)可使用py对象访问R中Python块中创建的对象。

4)使用r对象从Python中访问在R块中创建的对象。

```{python}
import pandas as pd
# 载入数据集
travel = pd.read_excel(“text.xlsx”)
```


```{r,fig.width=7, fig.height=3}
library(ggplot2)
ggplot(py$flights,aes(carrier,arr_delay)) + geom_point()
```

在加载reticulate包的情况下,是可以直接调用python的。

总体来看,在一些方面,的确Rstudio上直接运行python提供了便利,熟悉几个调用的方法就好啦。目前,唯一的问题是基于python画出来图是模糊的,需要再调试调试。

妈妈终于不用担心我装很多个工作台了


猜你喜欢

Python语言基础50课(3)|一行代码统计序列ATCG含量

4种绘制带误差线的柱形图

好看又好用的python可视化包

适用于任何学科| 10个好用的 Python数据可视化库


参考资料

https://www.jieandze1314.com/post/cnposts/rstudio-python/

https://zhuanlan.zhihu.com/p/35873037

https://link.zhihu.com/?target=https%3A//rstudio.github.io/reticulate/

我想在Rstudio中运行python

reticulate: R interface to Python

推荐阅读






Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/70996
 
1801 次点击