问题列表 - 第45609页

将未计算的命令传递给 R 中的函数

我是一个 R 新手,我被一个看似简单的问题所困扰,但却触及了关于如何以及何时在 R 中评估事物的非常深刻的问题。

我经常使用 Rserve;远程评估事物的典型语法重复输入有点麻烦:

RSeval(connection, quote(try(command)))
Run Code Online (Sandbox Code Playgroud)

所以我想要一个函数 r 只用调用来做同样的事情:

r(command)
Run Code Online (Sandbox Code Playgroud)

我的第一次天真的尝试注定会失败:

r <- function(command) {
    RSeval(c, quote(try(command)))
}
Run Code Online (Sandbox Code Playgroud)

您已经猜到了:这实际上是发送try(command)到我困惑的 Rserve 守护进程。我希望command得到部分评估,如果这有意义的话——即被我作为参数输入的内容替换,但不在本地评估它。

我寻找解决方案,浏览了引用、替代、评估、调用等的文档。但我找不到有效的东西。要么command在本地进行评估,要么根本不评估。

这不是一个大问题,我可以quote(try())一直输入整个该死的东西;但此时我最好奇的是如何让它发挥作用!

编辑:关于我想要做什么的更多解释。

  • 在上面的文本中,command理想情况下是对函数的调用,即不是字符串。类似于a <- 3orassign("a", 3)而不是"a<-3"or 的东西quote(a<-3)。我相信这就是这件事变得棘手的部分原因。似乎很难告诉 R 不要在本地评估它,而只是按字面意思发送它。基本上我希望我的函数有点像quote(),它不评估它的参数。
  • 关于我的意图的一些解释。我希望经常使用 Rserve 将命令传递到远程 R 守护进程。这些命令将是我自己的(或我的同事)的,并且守护进程受防火墙和身份验证保护(并且不会以 root 身份运行)——因此不必担心恶意命令被传递。
  • 老实说,这不是一个大问题,我会很高兴始终使用RSeval(c, quote(try())). 在这一点上,我认为这更像是对 R 微妙之处的有趣探究:-)

eval r

4
推荐指数
1
解决办法
1543
查看次数

3
推荐指数
1
解决办法
2万
查看次数

如何在C++中访问匿名union/struct成员?

这个问题是我的.下面描述的代码正在构建中,没有任何问题.


我有这门课.

Vector.h

struct  Vector
{
    union
    {
        float   elements[4];
        struct
        {
            float   x;
            float   y;
            float   z;
            float   w;
        };                  
    };

    float   length();
}
Run Code Online (Sandbox Code Playgroud)

Vector.cpp

float Vector::length()
{
  return x;  // error: 'x' was not declared in this scope
}
Run Code Online (Sandbox Code Playgroud)

如何访问成员x,y,z,w?

c++ anonymous-types

4
推荐指数
1
解决办法
4766
查看次数

在Emacs中禁用鼠标单击

有什么办法可以禁用Emacs中的所有鼠标点击事件吗?当我不小心碰到我的笔记本电脑上的触摸板时,我倾向于得到焦点问题,突然间我在另一个Emacs窗口.

emacs

17
推荐指数
2
解决办法
3802
查看次数

6
推荐指数
1
解决办法
3275
查看次数

C#中私有类的概念

除了Inner类之外,C#中是否可以存在私有类?

.net c# access-modifiers

29
推荐指数
3
解决办法
3万
查看次数

找到(立方)多项式的真根的简单方法是什么?

这对我来说似乎是一个显而易见的问题,但我无法在任何地方找到它.我有一个三次多项式,我需要找到函数的真正根源.什么是这样做的方法是什么?

我找到了几个关于立方函数根的封闭形式公式,但它们都使用复数或大量的测角函数而我不喜欢它们(并且也不知道选择哪一个).

我需要简单的东西; 越快越好; 而且我知道我最终需要求解更高阶的多项式,因此使用数值求解器也许会有所帮助.我知道我可以使用一些图书馆来为我做艰苦的工作,但是我想说我想做这个练习.

我用C编码,所以不import magic_poly_solver,请.

额外问题:如何在给定间隔内仅找到根?

c math polynomial-math numerical-methods

7
推荐指数
1
解决办法
7549
查看次数

C#加速字符串?

struct mydata
{
    public int id;
    public string data;
}

class Program
{
    static void Main(string[] args)
    {
        List<mydata> myc = new List<mydata>();

        Stopwatch stopwatch = new Stopwatch();

        stopwatch.Start();

        for (int i = 0; i < 1000000; i++)
        {
            mydata d = new mydata();

            d.id = i;
            d.data = string.Format("DataValue {0}",i);

            myc.Add(d);
        }

        stopwatch.Stop();
        Console.WriteLine("End: {0}", stopwatch.ElapsedMilliseconds);
}
Run Code Online (Sandbox Code Playgroud)

这个代码上面的代码是如此慢......?
在较旧的笔记本电脑上,时间是:C#代码高于:1500ms类似的代码在Delphi:450ms ....

然后我将代码更改为KeyValue/Pair(见下文):

Stopwatch stopwatch = new Stopwatch();

        stopwatch.Start();

        var list = new List<KeyValuePair<int , string>>();

        for (int i = 0; …
Run Code Online (Sandbox Code Playgroud)
Run Code Online (Sandbox Code Playgroud)

c# string performance

3
推荐指数
1
解决办法
820
查看次数

如果文件夹尚不存在,如何使用Bash创建文件夹?

#!/bin/bash
if [!-d /home/mlzboy/b2c2/shared/db]; then
    mkdir -p /home/mlzboy/b2c2/shared/db;
fi;
Run Code Online (Sandbox Code Playgroud)

这似乎不起作用.有人可以帮忙吗?

directory bash

165
推荐指数
6
解决办法
28万
查看次数

SQLite:根据时间选择行?

我有一个SQLite表,如下所示:

+-----------+-------+
| StartTime | Name  |
+-----------+-------+
|  08:00:00 | zone1 |
|  13:00:00 | zone2 |
|  17:30:00 | zone3 |
|  22:00:00 | zone4 |
+-----------+-------+
Run Code Online (Sandbox Code Playgroud)

我正在尝试编写一个将根据当前时间返回行的查询:

如果CurrentTime是08:30它将返回zone1如果CurrentTime是16:40它将返回zone2如果Currenttime是04:01它将返回zone4

等等...

到目前为止,我有一些运气但不完全是我想要的

SELECT * FROM table WHERE StartTime >= time('now', 'localtime') 
ORDER BY StartTime LIMIT 1;
Run Code Online (Sandbox Code Playgroud)

我已经尝试了上述语句的一些变体,但没有一个返回我之后的结果.

谢谢!

sqlite time datetime

1
推荐指数
1
解决办法
2559
查看次数