网易首页 > 网易号 > 正文 申请入驻

手把手 | 哇!用R也可以跑Python了

0
分享至

大数据文摘作品

编译:大茜、钱天培

R还是Python?

真是个千古难题!

如果你主要从事数据分析、统计建模和可视化,R大概是你的不二之选。但如果你还想来搞点深度学习,整个自然语言处理,那你可还真得用Python。

如果你处于交叉领域,很可能就需要两种语言切换。后果是,写个for loop还出bug真的是家常便饭。报警!

面对这种困境的绝不止你一个人!最近的KDnuggets Analytics的软件调查中,Python和R位居数据科学和机器学习软件的前两名。

如果你真的想提高你在数据科学领域的能力,这两种语言你确实都应该学习。

不过现在好消息来了!

RStudio开发了一个名为reticulate的包。通过安装包,你现在可以在R上运行Python的安装包和函数了~

今天文摘菌就来教教你咋用这个reticulate包。

安装并加载reticulate包

运行下面的命令来安装这个包、并导入到您的系统中。

# 安装reticulate包
install.packages("reticulate")
# 加载reticulate包
library(reticulate)

检查您的系统是否安装过Python

py_available()

返回值为TRUE或FALSE。如果返回的是TRUE,那恭喜你,您的系统已经有Python啦。FALSE的话就得先去装一下Python了。

在R中导入一个python模块

您可以使用函数import()来导入特定的包或模块。

os <- import(“os”)
os$getcwd()

上面的命令返回工作目录。

[1]"C:\\Users\\DELL\\Documents"

您可以使用os包中的listdir()函数来查看工作目录中的所有文件。

os$listdir()

安装Python包

第一步:创建新的工作环境;

conda_create(“r-reticulate”)

第二步:在conda环境下安装“r-reticulate”和“numpy”;

conda_install(“r-reticulate”,“numpy”)

如果“numpy”已经安装,您不必再次安装这个包。上面的代码只是给个例子而已。

第三步:加载包。

numpy <- import(“numpy”)

使用numpy数组

首先建立一个简单的numpy数组

y <- array(1:4, c(2, 2))
x <- numpy$array(y)

[,1] [,2]
[1,] 1 3
[2,] 2 4

将数组进行转置

numpy$transpose(x)

[,1] [,2]
[1,] 1 2
[2,] 3 4

求特征根和特征向量

numpy$linalg$eig(x)

一些数学函数

numpy$sqrt(x)
numpy$exp(x)

交互地使用Python

您可以在R中创建交互式Python控制台。您在Python中创建的对象可在R中使用(反之亦然)。通过使用repl_python()函数,可以使Python和R交互。首先,下载以下程序中使用的数据集:

repl_python()
# 加载“panda”数据集
import pandas as pd
# 载入数据集
travel = pd.read_excel(“AIR.xlsx”)
# 显示数据集的行列数
travel.shape
# 随机选取数据集中的行数
travel.sample(n = 10)
# 按某一标志分组
travel.groupby(“Year”).AIR.mean()
# 筛选数据个案
t = travel.loc[(travel.Month >= 6) & (travel.Year >= 1955),:]
# 回到R
exit

注意:您需要键入“exit”来返回到R会话

怎样从R中获取在python中创建的对象

你可以在利用py object获取python里的对象。

summary(py$t)

在这种情况下,我会用R的summary()函数并访问在python中创建的数据集T。此外,您可以使用ggplot2软件包绘制折线图。

#利用ggplot2绘制线图
library(ggplot2)
ggplot(py$t, aes(AIR, Year)) + geom_line()

怎样从Python中获取在R中创建的对象

您可以使用r object来解决这个问题。

先在R中创建一个对象:

mydata = head(cars, n=15)

在Python REPL中调用之前在R中所创建的对象:

repl_python()
import pandas as pd
r.mydata.describe()
pd.isnull(r.mydata.speed)
exit

使用sklearn包构建Logistic回归模型

sklearn软件包是python中最受欢迎的机器学习软件包之一,它支持各种统计和机器学习的算法。

repl_python()
# 加载包
from sklearn import datasets
from sklearn.linear_model import LogisticRegression
# 加载数据库
iris = datasets.load_iris()
# 建立logit模型
model = LogisticRegression()
model.fit(iris.data, iris.target)
# 进行预测
actual = iris.target
predicted = model.predict(iris.data)
#模型性能对比矩阵
print(metrics.classification_report(actual, predicted))
print(metrics.confusion_matrix(actual, predicted))

其他有用的函数

查看python的配置

运行py_config()命令来查看系统中安装的R的版本。它还能显示anaconda和numpy的详细信息。

py_config()

检查某个包是否安装

可以用以下命令来检查“pandas”是否安装:

py_module_available(“pandas”)

原文链接:

https://www.r-bloggers.com/run-python-from-r/

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
卢晓波重回“老本行”,任珠海市生态环境局党组书记

卢晓波重回“老本行”,任珠海市生态环境局党组书记

南方都市报
2024-04-24 10:08:12
天塌了!福建11岁双胞胎溺亡河里,只因被骂了一句,父母太难了!

天塌了!福建11岁双胞胎溺亡河里,只因被骂了一句,父母太难了!

娱乐小可爱蛙
2024-04-24 06:28:00
沈月瘦出了新高度!她瘦下来十分幼态脸啊!

沈月瘦出了新高度!她瘦下来十分幼态脸啊!

室内设计师阿喇
2024-04-23 19:16:30
美女写真图片大全清新唯美

美女写真图片大全清新唯美

农人老寓
2024-04-23 15:22:42
华为一季度中国手机市场份额升至15.5% iPhone同期大跌

华为一季度中国手机市场份额升至15.5% iPhone同期大跌

手机中国
2024-04-23 16:44:08
俄罗斯扯犊子被打脸了!

俄罗斯扯犊子被打脸了!

娱宙观
2024-04-22 14:19:00
今晚!CCTV5+直播丁俊晖继续出战斯诺克世锦赛,火箭奥沙利文亮相

今晚!CCTV5+直播丁俊晖继续出战斯诺克世锦赛,火箭奥沙利文亮相

晚池
2024-04-24 03:24:33
一个人最体面的退场方式

一个人最体面的退场方式

洞见
2024-04-21 22:38:20
重罚周琦!肘击暴揍广厦中锋,CBA连夜做重大决定,杜锋不妙

重罚周琦!肘击暴揍广厦中锋,CBA连夜做重大决定,杜锋不妙

胖周聊球
2024-04-24 09:23:20
极星首款手机Polestar Phone发布 16GB+1TB售7388元

极星首款手机Polestar Phone发布 16GB+1TB售7388元

手机中国
2024-04-23 20:36:04
周琦禁赛新进展:广东男篮深夜表态,5次错判吹蒙徐杰,杜锋摊牌

周琦禁赛新进展:广东男篮深夜表态,5次错判吹蒙徐杰,杜锋摊牌

体育咆哮君
2024-04-24 12:30:31
苹果连发6个新logo:或发布1款触控笔和5款新平板

苹果连发6个新logo:或发布1款触控笔和5款新平板

手机中国
2024-04-24 09:39:14
时隔多年,孙艺洲再次Cos吕布,网友:吕布本人都没这么像吕布

时隔多年,孙艺洲再次Cos吕布,网友:吕布本人都没这么像吕布

二次元那些事
2024-04-21 18:04:14
荷兰游客评价3国地铁:英国安静,印度干净,中国地铁只说了3个字

荷兰游客评价3国地铁:英国安静,印度干净,中国地铁只说了3个字

常高俊April
2024-04-22 12:50:29
千万不要和这10类人一起旅游,关系再好也不要

千万不要和这10类人一起旅游,关系再好也不要

小兔子爱旅游
2024-04-23 13:48:40
新《红楼梦》演员亮相红毯,十二钗的脸堪称连连看,王熙凤有气质

新《红楼梦》演员亮相红毯,十二钗的脸堪称连连看,王熙凤有气质

娱乐圈十三太保
2024-04-23 17:18:59
陈坤突然官宣!周迅被炸上热搜:已经过去25年,终于确定了关系

陈坤突然官宣!周迅被炸上热搜:已经过去25年,终于确定了关系

秋月白
2024-04-24 10:15:25
到处都是裁员,悟出一个道理

到处都是裁员,悟出一个道理

时尚的弄潮
2024-04-23 20:01:01
俞敏洪去西藏后大变身,我就说没有人可以美着从西藏走出来!

俞敏洪去西藏后大变身,我就说没有人可以美着从西藏走出来!

阳光情感shuo
2024-04-24 02:35:03
村干部2分32秒视频后续!通报结果出来了 但翻拍者身份却成了谜?

村干部2分32秒视频后续!通报结果出来了 但翻拍者身份却成了谜?

影视解说阿相
2024-04-24 07:20:03
2024-04-24 12:48:49
大数据文摘
大数据文摘
专注大数据,每日有分享!
6200文章数 94248关注度
往期回顾 全部

科技要闻

特斯拉财报差劲 但马斯克做出一个重磅表态

头条要闻

美国首条"真正意义上的"高铁开工 交通部长感慨

头条要闻

美国首条"真正意义上的"高铁开工 交通部长感慨

体育要闻

足智多谋的哈姆,温水里的青蛙

娱乐要闻

方媛带两女儿参加婚礼,当花童超可爱

财经要闻

AI风口吹不起科大讯飞

汽车要闻

升级L2+级驾辅系统 2024款猛龙售16.58万起

态度原创

教育
时尚
家居
旅游
房产

教育要闻

学校举办校长小助理听证会 让校长和学生面对面解决问题

40+女人更适合极简风穿搭,不穿花哨反而更加洋气,赶紧安排

家居要闻

光影之间 空间暖意打造生活律动

旅游要闻

不合理低价游为何禁不住?

房产要闻

供应量环跌71%!海口这个月又只发了5张证!

无障碍浏览 进入关怀版