Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将带有参数名的函数参数传递给R中的外部程序?_Python_R - Fatal编程技术网

Python 如何将带有参数名的函数参数传递给R中的外部程序?

Python 如何将带有参数名的函数参数传递给R中的外部程序?,python,r,Python,R,比如说, passpara = function(pa, pb, pc) { # pa is not passed do1(pa) # pb and pc are passed # passed == "--pb pb_value --pc pc_value" # getpass is something I am trying to figure out passed = getpass(pb, pc) system(paste("cmd

比如说,

passpara = function(pa, pb, pc) {
    # pa is not passed
    do1(pa)
    # pb and pc are passed
    # passed == "--pb pb_value --pc pc_value"
    # getpass is something I am trying to figure out
    passed = getpass(pb, pc)
    system(paste("cmd", passed))
}
具体来说,如下调用
passpara

passpara(pa="dummy", pb="full-iso", pc="always")
应等同于在shell中调用此命令:

cmd --pb full-iso --pc always
在这种情况下,函数
getpass
是什么样子的

我还认为
系统
函数有时很不方便,因为它接收一个字符串,而您 必须手动分隔参数, 在R中是否有类似于python的
subprocess.call()
? 在python中,您可以执行
子流程调用([“cmd”,parameter1,parameter2,parameter3])
和 它将自动分隔参数,如果参数是字符串,这非常方便
包含空白的。

请定义“不便”,并尝试提供完整且可复制的示例。我们不知道变量
pa
pb
pc
是什么,也不知道
do1()
getpass()
应该做什么

system()
调用,就像
pipe()
调用一样,允许您使用您认为合适的参数调用可执行文件。我想我已经在这里发布了答案,使用
awk
sed
作为
read.csv()之前的过滤器

下面是一个简短的例子

R> head(readLines(pipe("cut -f2 -d, CRAN_mirrors.csv")))
[1] "Country"   "0-Cloud"   "Argentina" "Argentina" "Australia" "Australia"
R> 
其中,我们使用一个参数字符串来
pipe()
;它使用选项和命令

编辑:您修改后的问题的答案可能只需一句话:

R> passpara <- function(pa, pb, pc) sprintf("cmd --pb %s --pc %s", pb, pc)
R> passpara(pa="dummy", pb="full-iso", pc="always")
[1] "cmd --pb full-iso --pc always"
R> 

请定义“不方便”,并尝试提供完整且可复制的示例。我们不知道变量
pa
pb
pc
是什么,也不知道
do1()
getpass()
应该做什么

system()
调用,就像
pipe()
调用一样,允许您使用您认为合适的参数调用可执行文件。我想我已经在这里发布了答案,使用
awk
sed
作为
read.csv()之前的过滤器

下面是一个简短的例子

R> head(readLines(pipe("cut -f2 -d, CRAN_mirrors.csv")))
[1] "Country"   "0-Cloud"   "Argentina" "Argentina" "Australia" "Australia"
R> 
其中,我们使用一个参数字符串来
pipe()
;它使用选项和命令

编辑:您修改后的问题的答案可能只需一句话:

R> passpara <- function(pa, pb, pc) sprintf("cmd --pb %s --pc %s", pb, pc)
R> passpara(pa="dummy", pb="full-iso", pc="always")
[1] "cmd --pb full-iso --pc always"
R> 

请定义“不方便”,并尝试提供完整且可复制的示例。我们不知道变量
pa
pb
pc
是什么,也不知道
do1()
getpass()
应该做什么

system()
调用,就像
pipe()
调用一样,允许您使用您认为合适的参数调用可执行文件。我想我已经在这里发布了答案,使用
awk
sed
作为
read.csv()之前的过滤器

下面是一个简短的例子

R> head(readLines(pipe("cut -f2 -d, CRAN_mirrors.csv")))
[1] "Country"   "0-Cloud"   "Argentina" "Argentina" "Australia" "Australia"
R> 
其中,我们使用一个参数字符串来
pipe()
;它使用选项和命令

编辑:您修改后的问题的答案可能只需一句话:

R> passpara <- function(pa, pb, pc) sprintf("cmd --pb %s --pc %s", pb, pc)
R> passpara(pa="dummy", pb="full-iso", pc="always")
[1] "cmd --pb full-iso --pc always"
R> 

请定义“不方便”,并尝试提供完整且可复制的示例。我们不知道变量
pa
pb
pc
是什么,也不知道
do1()
getpass()
应该做什么

system()
调用,就像
pipe()
调用一样,允许您使用您认为合适的参数调用可执行文件。我想我已经在这里发布了答案,使用
awk
sed
作为
read.csv()之前的过滤器

下面是一个简短的例子

R> head(readLines(pipe("cut -f2 -d, CRAN_mirrors.csv")))
[1] "Country"   "0-Cloud"   "Argentina" "Argentina" "Australia" "Australia"
R> 
其中,我们使用一个参数字符串来
pipe()
;它使用选项和命令

编辑:您修改后的问题的答案可能只需一句话:

R> passpara <- function(pa, pb, pc) sprintf("cmd --pb %s --pc %s", pb, pc)
R> passpara(pa="dummy", pb="full-iso", pc="always")
[1] "cmd --pb full-iso --pc always"
R> 

在回答您关于
系统的投诉时,帮助页面
系统
在“另请参见:”部分中提到了
system2
功能。
system2
函数要求命令作为第一个参数,然后命令参数的字符向量作为第二个参数。因此,与python显示的内容不完全相同,但类似,您可以将其称为:

system2("cmd", c(parameter1, parameter2, parameter3) )

在回答您关于
系统的投诉时,帮助页面
系统
在“另请参见:”部分中提到了
system2
功能。
system2
函数要求命令作为第一个参数,然后命令参数的字符向量作为第二个参数。因此,与python显示的内容不完全相同,但类似,您可以将其称为:

system2("cmd", c(parameter1, parameter2, parameter3) )

在回答您关于
系统的投诉时,帮助页面
系统
在“另请参见:”部分中提到了
system2
功能。
system2
函数要求命令作为第一个参数,然后命令参数的字符向量作为第二个参数。因此,与python显示的内容不完全相同,但类似,您可以将其称为:

system2("cmd", c(parameter1, parameter2, parameter3) )

在回答您关于
系统的投诉时,帮助页面
系统
在“另请参见:”部分中提到了
system2
功能。
system2
函数要求命令作为第一个参数,然后命令参数的字符向量作为第二个参数。因此,与python显示的内容不完全相同,但类似,您可以将其称为:

system2("cmd", c(parameter1, parameter2, parameter3) )

抱歉,但是这个问题与Python有什么关系?我问的是R中是否有一个类似于Python的特性。抱歉,但是这个问题与Python有什么关系?我问的是R中是否有一个类似于Python的特性。抱歉,但是这个问题与Python有什么关系?我问的是R中是否有一个类似于Python的特性。抱歉,但是这个问题与Python有什么关系呢?我想问的是,R中是否有一个类似于Python的特性。不是这样。想象一下,我这样做是为了实现您提出的功能:
passpara(pa=“dummy”,pb=“我有空格”,pc=“更多空格”)
所以我的