第二章:25+ Python 数据操作教程(第二十二节如何从 R 调用或运行 python)持续更新

这篇具有很好参考价值的文章主要介绍了第二章:25+ Python 数据操作教程(第二十二节如何从 R 调用或运行 python)持续更新。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文介绍了如何从 R 调用或运行 python。这两种工具都有自己的优点和缺点。使用这两个工具中最好的包和功能并将其组合起来总是一个好主意。在数据科学领域,这些工具在使用方面拥有良好的市场份额。R 主要以数据分析、统计建模和可视化而闻名。而Python在深度学习和自然语言处理方面很受欢迎。

在最近的 KDnuggets Analytics 软件调查民意调查中,Python 和 R 被评为数据科学和机器学习领域的前 2 位工具。如果你真的想提升你在数据科学领域的职业生涯,这些就是你需要关注的语言。

 

RStudio 开发了一个名为reticulate 的包,它提供了运行 R 中的 Python 包和函数的媒介。

安装和加载 Reticulate 包

运行以下命令以安装此软件包并将其导入到您的系统中。

# 安装网状包
install.packages("reticulate")

# 加载网状包
库(reticulate)

# Install reticulate package
install.packages("reticulate")

# Load reticulate package
library(reticulate)

检查您的系统上是否可以使用 Python
py_available()
它返回 TRUE/FALSE。如果为 TRUE,则表示您的系统上已安装 python。

在 R 中导入 python 模块

您可以使用函数import( )导入特定的包或模块。
os <- import("os")
os$getcwd()
上面的程序返回工作目录。
[1]“C:\\Users\\DELL\\Documents”

您可以使用os 包中的listdir( )函数来查看工作目录中的所有文件   
os$listdir()
 [1] ".conda"                       ".gitignore"                   ".httr-oauth"                 
  [4] ".matplotlib"                  ".RData"                       ".RDataTmp"                   
  [7] ".Rhistory"                    "1.pdf"                        "12.pdf"                      
 [10] "122.pdf"                      "124.pdf"                      "13.pdf"                      
 [13] "1403.2805.pdf"                "2.pdf"                        "3.pdf"                       
 [16] "AIR.xlsx"                     "app.r"                        "Apps"                        
 [19] "articles.csv"                 "Attrition_Telecom.xlsx"       "AUC.R"


安装Python包

第1步:创建新环境

最简单的方法是指定 python 安装程序的文件位置,其中 python 可执行文件存在。如果您使用AnacondaPython,您可以找到Anaconda3文件夹,并且python.exe必须位于该文件夹下。

图书馆(网状)
use_python('C:\\Users\\DELL\\Anaconda3\\python.exe', required = T)
py_可用(真)

library(reticulate)
use_python('C:\\Users\\DELL\\Anaconda3\\python.exe', required = T)
py_available(TRUE)
如果您使用Python(不使用Anaconda),您可以像这样指定路径:
use_python(Sys.which('python3'), required = T)
现在你可以使用命令安装你想要的python包了shell()
shell("pip install numpy")
另一种创建环境的方法是conda_create( )
conda_create("r-reticulate")
在 conda 环境中安装包
conda_install(“r-reticulate”,“numpy”)
由于numpy已经安装,所以不需要再次安装。上面的例子只是为了演示。

第 2 步:加载包
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)
[[1]]
[1] -0.3722813  5.3722813

[[2]]
           [,1]       [,2]
[1,] -0.9093767 -0.5657675
[2,]  0.4159736 -0.8245648

数学函数
numpy$sqrt(x)
numpy$exp(x)
 
R Markdown 中的 Python 引擎
您还可以使用 R Markdown,它允许使用 reticulate 包运行 Python 代码。在运行 Python chunk 之前,您需要加载 reticulate 库并设置 python(如下所示)。
```{r 设置,include=FALSE}
图书馆(网状)
use_python('C:\\Users\\DELL\\Anaconda3\\python.exe', required = T)
py_可用(真)
````

```{r setup, include=FALSE}
library(reticulate)
use_python('C:\\Users\\DELL\\Anaconda3\\python.exe', required = T)
py_available(TRUE)
```
Python 代码块通过```{python} 启用。
```{python}
import pandas
pandasdf = pd.read_csv("C:/Users/DELL/deals.csv")
pandasdf.head()
```
第二章:25+ Python 数据操作教程(第二十二节如何从 R 调用或运行 python)持续更新,matplotlib,pip,scipy,pyqt,scikit-learn,django,python
如何直接执行Python代码
您可以将 python 代码按原样放入函数中py_run_string( )。您可以访问使用创建的对象py$objectname。例如,下面的代码创建 pandas 数据框。您可以使用py$pandasdf访问它
py_run_string("将 pandas 导入为 pd; pandasdf = pd.read_csv('C:/Users/DELL/deals.csv');")
py_run_string("import pandas as pd; pandasdf = pd.read_csv('C:/Users/DELL/deals.csv');")
您还可以使用函数直接运行python文件py_run_file( )
py_run_file(“样本文件.py”)
py_run_file("samplefile.py")
交互地使用 Python
您可以在 R 会话中创建交互式 Python 控制台。您在 Python 中创建的对象可用于您的 R 会话(反之亦然)。
通过使用repl_python()函数,您可以使其具有交互性。下载下面程序中使用的数据集。
repl_python()
# 加载 Pandas 包
将 pandas 导入为 pd
# 导入数据集
旅行 = 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 退出

repl_python()

# Load Pandas package

import pandas as pd

# Importing Dataset

travel = pd.read_excel("AIR.xlsx")


# Number of rows and columns
travel.shape

# Select random no. of rows
travel.sample(n = 10)

# Group By
travel.groupby("Year").AIR.mean()

# Filter
t = travel.loc[(travel.Month >= 6) & (travel.Year >= 1955),:]

# Return to R
exit

注意:需要输入exit 才能返回R环境。

第二章:25+ Python 数据操作教程(第二十二节如何从 R 调用或运行 python)持续更新,matplotlib,pip,scipy,pyqt,scikit-learn,django,python
从 R 运行 Python


如何从 R 访问在 python 中创建的对象

您可以使用py 对象 来访问在 python 中创建的对象。

摘要(py$t)

summary(py$t)

在本例中,我使用R的summary()函数并访问在python中创建的数据帧t 。同样,您可以使用 ggplot2 包创建线图。

# 使用 ggplot2 库的折线图
(ggplot2)
ggplot(py$t, aes(AIR, Year)) + geom_line()

# Line chart using ggplot2
library(ggplot2)
ggplot(py$t, aes(AIR, Year)) + geom_line()

如何从 Python 访问在 R 中创建的对象
您可以使用r 对象来完成此任务。 
1. 让我们在R中创建一个对象
mydata = head(汽车, n=15)

mydata = head(cars, n=15)

2. 在Python REPL中使用R创建的对象
repl_python()
将 pandas 导入为 pd
r。mydata.describe()
pd.isnull( r.mydata.speed )
退出

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

使用 sklearn 包构建逻辑回归模型
sklearn 包是 Python 中最流行的机器学习包之一。它支持各种统计和机器学习算法。
repl_python()
# 加载库
从sklearn导入数据集
从 sklearn.linear_model 导入 LogisticRegression
# 加载鸢尾花数据集
iris = datasets.load_iris()
# 开发 logit 模型
模型=逻辑回归()
model.fit(iris.data, iris.target)
# 评分
实际 = iris.target
预测 = model.predict(iris.data)
# 性能指标
打印(metrics.classification_report(实际,预测))
打印(metrics.confusion_matrix(实际,预测))

repl_python()

# Load libraries

from sklearn import datasets

from sklearn.linear_model import LogisticRegression

# load the iris datasets

iris = datasets.load_iris()

# Developing logit model

model = LogisticRegression()

model.fit(iris.data, iris.target)

# Scoring

actual = iris.target

predicted = model.predict(iris.data)

# Performance Metrics

print(metrics.classification_report(actual, predicted))

print(metrics.confusion_matrix(actual, predicted))


其他有用的功能


查看 python 的配置

运行py_config( )命令 来查找系统上安装的 python 版本。它还显示有关 anaconda 和 numpy 的详细信息。文章来源地址https://www.toymoban.com/news/detail-731884.html

py_config()
python: C:\Users\DELL\ANACON~1\python.exe
libpython: C:/Users/DELL/ANACON~1/python36.dll
pythonhome: C:\Users\DELL\ANACON~1
版本:3.6.1 |Anaconda 4.4.0(64 位)| (默认,2017 年 5 月 11 日,13:25:24)[MSC v.1900 64 位 (AMD64)]
架构:64位
numpy: C:\Users\DELL\ANACON~1\lib\site-packages\numpy
numpy_版本:1.14.2

python:         C:\Users\DELL\ANACON~1\python.exe
libpython:      C:/Users/DELL/ANACON~1/python36.dll
pythonhome:     C:\Users\DELL\ANACON~1
version:        3.6.1 |Anaconda 4.4.0 (64-bit)| (default, May 11 2017, 13:25:24) [MSC v.1900 64 bit (AMD64)]
Architecture:   64bit
numpy:          C:\Users\DELL\ANACON~1\lib\site-packages\numpy
numpy_version:  1.14.2


检查是否安装了特定的软件包

在下面的程序中,我们将检查是否安装了pandas软件包。
py_module_available("pandas")

到了这里,关于第二章:25+ Python 数据操作教程(第二十二节如何从 R 调用或运行 python)持续更新的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 第二十二章 案例TodoList之鼠标事件

    本小节,我们需要使用鼠标事件,给 Item 组件添加背景颜色,并显示删除按钮。 添加鼠标移入和移出事件 主要的改造点: 初始化一个状态数据,用于控制背景颜色和删除按钮 当值为 true 的时候,背景颜色变为灰色,删除按钮显示。为 false 的时候,背景颜色变回白色,删除

    2024年02月08日
    浏览(36)
  • ArduinoUNO实战-第二十二章-红外遥控实验

    Arduino基础入门篇25—红外遥控 Arduino与红外遥控握手 在日常生活中我们会接触到各式各样的遥控器,电视机、空调、机顶盒等都有专用的遥控器,很多智能手机也在软硬件上对红外遥控做了支持,可以集中遥控绝大部分家用电器。 当按下遥控器上某个按键,串口输出该按键的

    2024年02月16日
    浏览(39)
  • Python开发 Git 第二章: 提交更改 撤销更改 分支管理 远程仓库操作

    在第一章中,我们成功地初始化了Git仓库,并进行了一些基本的配置。现在,让我们深入学习Git的基本操作,包括提交更改、撤销更改、分支管理以及远程仓库的操作。 2.1.1 添加文件到暂存区 在Git中,提交更改通常需要将文件先添加到暂存区。假设我们有一个新的文件 exa

    2024年02月04日
    浏览(45)
  • NanoEdge AI Studio 教程 第二章--异常数据分析

    OK,好久不见,各位,最近挺忙,欢迎回来。 让我们开始第二章节,异常判断。 目录 一 Nano Edge AI Studio 简单概述 二 异常判断 1.工程选择 2.进行工程设置 2.1 MCU选择 2.2 数据设定 3.输入数据 4.模型训练 5.验证 6.生成模型 7.布置模型 NanoEdge AI Studio主要可以实现的功能主要分为四

    2024年04月17日
    浏览(45)
  • 第二十二章 开发Productions - ObjectScript Productions - 生成警报

    如果发生警报事件,警报会在生产运行时向适用的用户发送通知。目的是提醒系统管理员或服务技术人员存在问题。可以通过电子邮件、文本寻呼机或其他机制发送警报。所有警报还会将消息写入 IRIS 事件日志,类型为警报。 生产警报机制的工作原理如下: 当为 Productions 创

    2024年02月07日
    浏览(76)
  • UNIX网络编程卷一 学习笔记 第二十二章 高级UDP套接字编程

    TCP是一个字节流协议,又使用滑动窗口,因此没有记录边界或发送者数据发送能力超过接收者接收能力之类的事情,但对于UDP,每个输入操作对应一个UDP数据报(一个记录),因此当收取的数据报大于引用的输入缓冲区时就有问题。 UDP是不可靠协议,但有些应用确实有理由使

    2024年02月12日
    浏览(51)
  • 操作系统——第二章

    一.单选题(共30题,60.0分) 1 ()是指从作业提交给系统到作业完成的时间间隔 (2.0分) A、 周转时间 B、 响应时间 C、 等待时间 D、 运行时间 正确答案: A 2 引入多道程序设计技术之后,处理器的利用率() (2.0分) A、 有所改善 B、 极大提高 C、 降低 D、 无变化 正确答

    2023年04月08日
    浏览(38)
  • 操作系统(第二章-进程管理)

    目录 一、程序执行 1. 前趋图  2. 程序的顺序执行  3. 程序的并发执行  二、进程的描述      (一)、进程的概念  1. 进程的定义  2. 进程的特征      (二)、进程的状态极其转换  1. 进程的三种基本状态 (1)就绪状态  (2)运行状态 (3)等待状态 2. 进程状态的转换

    2024年01月22日
    浏览(44)
  • 操作系统第二章练习题

    第三部分 选择题 1、在进程管理中,当(     )时,进程从阻塞状态变为就绪状态。   C  A.进程被进程调度程序选中              B.等待某一事件 C.等待的事件发生                       D.时间片用完 2、分配到必要的资源并获得处理机时的进程状态是(

    2024年02月07日
    浏览(41)
  • Mysql第二章 多表查询的操作

    因为直接连接多表时,笛卡尔积的问题引出了多表联查的问题,多表查询基本分为三类,外连接和内连接,等值和非等值,自连接和非自连接 这些连接关系,归根结底是集合的交并补运算 求出两个表的公共部分,叫做内连接,相当于是交集 求出两个表的公共部分加上左边的

    2024年02月04日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包