我认为我的闪亮脚本中存在一个问题,执行一个shell命令,我想知道是否有办法在闪亮的内部执行此命令。
除了闪亮的代码功能之外。
#Function to calculate maxentscore
calculate_maxent <- function(seq_vector,maxent_type){
#Save working directory from before
Current_wkdir <- getwd()
#First, change working directory, to perl script location
setwd("S:/Arbeitsgruppen VIRO/AG_Sch/Johannes Ptok_JoPt/Rpackages/rnaSEQ/data/maxent")
#Create new text file with the sequences saved
cat(seq_vector,file="Input_sequences",sep="\n",append=TRUE)
#Execute the respective Perl script with the respective Sequence file
if(maxent_type == 3) cmd <- paste("score3.pl", "Input_sequences")
if(maxent_type == 5) cmd <- paste("score5.pl", "Input_sequences")
#Save the calculated Maxent score file
x <- shell(cmd,intern=TRUE)
#Reset the working directory
setwd(Current_wkdir)
#Substracting the Scores from the Maxent Score Table
x <- substr(x,(regexpr("\t",x)[[1]]+1),nchar(x))
#Returning the maxent table
return(x)
}
所以基本上我只是尝试执行以下代码:
shell("score5.pl Input_sequences")
在闪亮的
中似乎不可能这样答案 0 :(得分:0)
我不知道shell命令,但可以通过system()执行shell命令。它甚至使用R。
设置的当前工作目录所以你可以试试:
x <- system(cmd, intern=True)