首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过R的网格化用python编写一个lambda函数

通过R的网格化用python编写一个lambda函数
EN

Stack Overflow用户
提问于 2017-03-18 00:21:02
回答 1查看 381关注 0票数 0

我正在尝试编写一个简单的python函数,比如将一列中的每一项都加5,但是我无法在R环境中定义一个python函数。可以在这里定义一个Python函数吗?

代码语言:javascript
复制
library(magrittr)
library(dplyr)
library(reticulate)

os <- import('os')
pd <- import('pandas', convert = F)
np <- import('numpy', convert = F)

a <- pd$Series(data = c(1, 2, 3))

b <- pd$DataFrame(list(a = c(10,20,30),
                       b = c(20, 30, 10)))

c <- pd$DataFrame(list(a = c(10,20,30),
                       c = c(40, 50, 60)))$merge(b)

c$cumsum()

plus_5 <- function(x) x + 5

c$apply(func = plus_5(b$a))
EN

回答 1

Stack Overflow用户

发布于 2018-03-17 09:28:45

您可以在R中定义Python函数,并按如下方式调用它:

代码语言:javascript
复制
library(reticulate)
util <- py_run_string("
def f1(a, b=3):
  return a + b
")
util$f1(1)

然后你可以在你的c$apply()中使用它。希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42862496

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档