如何解决R 为表达式添加换行符
我在 list *tri(list *L)
{
list *i,*j,*min;
avion x;
for (i=L; (*i)->svt != NULL; i=(*i)->svt)
{
min=i;
for (j=(*i)->svt; j != NULL; j=(*j)->svt)
{
if ((*j)->A.capacite < (*min)->A.capacite)
min=j;
}
if (min != i)
{
x=(*min)->A;
(*min)->A = (*i)->A;
(*i)->A = x;
}
}
return(L);
}
文件中存储了很长的表达式。通过将此表达式复制到 R 中,它在一行中表示。当我尝试运行它时,它不起作用,并出现“意外符号”或“意外数字常量”之类的错误。但是,如果我在任意位置插入换行符,例如每 3000 个字符后,它运行顺利。
有谁知道如何处理这个问题?特别是,是否可以自动使这些换行符或有其他可能的解决方案?
.txt
解决方法
在您的情况下,由于您在文件中获得了表达式,您可以从 R source()
文件,而不是复制和粘贴。您需要在文本文件中添加作业,或者您可以这样做:
source("filename.txt")$value
获取计算结果
您在评论中提到您希望能够在优化中使用它 - 一个在一维上找到最小化表达式的 alpha 的简单示例是:
f <- function(alpha){source("o:\\test.txt")$value}
optim(1,f,lower=0.5,upper=1.5,method="L-BFGS-B")
#$par
#[1] 1
#
#$value
#[1] 1.011915
#
#$counts
#function gradient
# 1 1
#
#$convergence
#[1] 0
#
#$message
#[1] "CONVERGENCE: NORM OF PROJECTED GRADIENT <= PGTOL"
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。