问题列表 - 第43647页

R:将表达式传递给内部函数

进一步深入研究R评估的奥秘......这与我之前的问题(如何编写一个评估数据框内表达式的R函数)密切相关.假设我想编写一个函数topfn,它接受一个数据框和一个涉及该数据框的列名的表达式.我想将这两个参数传递给另一个fn实际评估数据框"环境"中表达式的函数.我想要两者fntopfn在传递数据框和表达式时正常工作

根据上述问题的答案,我的第一次尝试是定义:

 fn <- function(dfr, expr) {
   mf <- match.call()
   eval( mf$expr, envir = dfr )
 }
Run Code Online (Sandbox Code Playgroud)

并定义topfn如下:

topfn <- function(df, ex) {
  mf <- match.call()
  fn(df, mf$ex) 
}
Run Code Online (Sandbox Code Playgroud)

现在,如果我有一个数据框架

df <- data.frame( a = 1:5, b = 1:5 )
Run Code Online (Sandbox Code Playgroud)

内部函数fn工作正常:

> fn(df,a)
[1] 1 2 3 4 5
Run Code Online (Sandbox Code Playgroud)

但是topfn不起作用:

> topfn(df,a)
mf$ex
Run Code Online (Sandbox Code Playgroud)

为了解决这个问题,我首先检查一下topfn(df,a),

> class(topfn(df,a))
[1] "call"
Run Code Online (Sandbox Code Playgroud)

这给了我一个丑陋的黑客重新定义fn如下的想法: …

evaluation r lazy-evaluation

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

如何区分自定义跟踪侦听器中的Trace和Debug调用?

Trace.Listeners和Debug.Listeners共享相同的内部集合,因此我无法向Trace.Listeners添加跟踪侦听器,也无法向Debug.Listeners添加调试侦听器以区分它们.

我怎样才能做到这一点?

编辑:

为什么我要这样做只是因为我正在为我们的应用程序编写一个日志记录层,我希望通过系统来跟踪不同的日志,其中Debug/Trace是两个日志源(还有其他几个来源)我想跟踪.

.net debugging logging trace system.diagnostics

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

HTML5本地存储后备解决方案

我正在寻找可以localStorage在没有本机支持的浏览器上模拟的JavaScript库和代码.

基本上,我想使用localStorage存储数据编码我的网站,并知道它仍然适用于本机不支持它的浏览器.这意味着库将检测是否window.localStorage存在并且如果存在则使用它.如果它不存在,那么它将通过在window.localStorage命名空间中创建自己的实现来创建某种本地存储的回退方法.

到目前为止,我已经找到了这些解决方案:

  1. 简单的sessionStorage实现.
  2. 使用cookie的实现(对此想法不感兴趣).
  3. Dojo的dojox.storage,但这是它自己的事情,而不是真正的后备.

我知道Flash和Silverlight也可以用于本地存储,但是没有找到任何使用它们作为标准HTML5 localStorage的后备.也许谷歌Gears也有这个功能?

请分享您找到的任何相关库,资源或代码段!我对纯javascript或基于jquery的解决方案特别感兴趣,但我猜这不太可能.

javascript flash jquery html5 local-storage

113
推荐指数
5
解决办法
6万
查看次数

用SC.exe或InstallUtil.exe安装Windows服务 - 有区别但是哪个?

SC.exeInstallUtil都安装/卸载Windows服务.但它们似乎没有同样的方式.

有什么不同?


例如,当Sc create愉快地安装服务时,InstallUtil失败(某些文件或依赖项未找到错误).太陌生了; 如果我在控制台中运行net start,则不会显示该服务.但它确实出现在服务GUI中.当我尝试卸载时会发生这种变化.

我自己写了这个服务,早期的版本工作.Dotnet3.5.

.net windows-services installutil

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

如何在Tapestry 5中创建组件?

我一直在使用Tapestry的内置组件,但现在我想尝试制作自己的组件.假设这是可能的,它是如何完成的,并且通常期望开发人员除了开箱即用之外还将创建自己的组件?

tapestry

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

为什么补丁在SVN工作副本上拒绝我的补丁文件?

我有一个像这样的补丁文件:

Index: dir/file.xml
===================================================================
--- dir/file.xml    (revision 178)
+++ dir/file.xml    (working copy)
@@ -7,7 +7,7 @@
    <markup>
-   <markup />
+   <markup></markup>
    <markup>
    <markup>
@@ -20,6 +20,7 @@
    <markup>
    <markup>
+   <tag>
    <markup>
Run Code Online (Sandbox Code Playgroud)

要将它应用于SVN工作副本,我使用以下方法对其进行分支:

$ svn copy -r 178 trunk/component/dir branches/mybranch
Run Code Online (Sandbox Code Playgroud)

然后我试了一下

$ cd branches/mybranch
$ ls -R
./dir:
file.xml
$ patch -p0 -i ~/patchfile.patch
Run Code Online (Sandbox Code Playgroud)

但SVN的输出是

(Stripping trailing CRs from patch.)
patching file dir/file.xml
Hunk #1 FAILED at 7.
Hunk #2 FAILED at 20.
2 out of 2 hunks FAILED …
Run Code Online (Sandbox Code Playgroud)

svn patch

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

Google App Engine的框架选择/建议

我想在Google App引擎中开发一个大型Web应用程序,但我不知道使用哪个框架来获取MVC模型.我更喜欢使用Spring MVC,但我读到了GAE的几个问题.另一种选择是使用django和python,但我从未使用过.你推荐什么框架或选项?还有其他框架吗?

问候

python java django google-app-engine spring

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

jquery动态添加复选框不能与change()函数一起使用

我动态加载了几个带有标签和复选框的li到另一个可见的ul.我设置复选框被检查="已检查",我试图触发一个事件,当我更改这些动态插入复选框但没有任何事情发生.

这是jquery:

$(".otherProductCheckbox:checkbox").change( function(){
    alert('test');
});
Run Code Online (Sandbox Code Playgroud)

这是动态添加的li的html:

<li class="otherProduct"><input type="checkbox" class="otherProductCheckbox radioCheck" checked="checked"/><label>Product Name</label></li>
Run Code Online (Sandbox Code Playgroud)

知道为什么我不能在复选框更改其检查状态时发生警报?

checkbox jquery onchange dynamic

8
推荐指数
2
解决办法
8854
查看次数

为什么在.Net中使用异步编程模型不会导致StackOverflow异常?

例如,我们调用BeginReceive并具有BeginReceive完成后执行的回调方法.如果那个回调方法再次在我的脑海中调用BeginReceive,那将非常类似于递归.这怎么会导致stackoverflow异常.来自MSDN的示例代码:

private static void Receive(Socket client) {
    try {
        // Create the state object.
        StateObject state = new StateObject();
        state.workSocket = client;

        // Begin receiving the data from the remote device.
        client.BeginReceive( state.buffer, 0, StateObject.BufferSize, 0,
            new AsyncCallback(ReceiveCallback), state);
    } catch (Exception e) {
        Console.WriteLine(e.ToString());
    }
}

private static void ReceiveCallback( IAsyncResult ar ) {
    try {
        // Retrieve the state object and the client socket 
        // from the asynchronous state object.
        StateObject state = (StateObject) ar.AsyncState;
        Socket client = …
Run Code Online (Sandbox Code Playgroud)

.net asynchronous

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

netsh http添加urlacl问题

我正在尝试从WIX安装程序设置一些端口.对于WinXP,我们在自定义操作中使用httpcfg,这很好用.对于Win7,我们正在尝试:

netsh http add urlacl url=http://127.0.0.1/8346/ user="NT AUTHORITY\Authenticated Users" sddl="D:(A;;GX;;;AU)"
Run Code Online (Sandbox Code Playgroud)

WIX安装程序正确执行此语句并设置端口 - 运行.msi的管理员.拥有较少权限的用户无法访问这些端口.我需要为机器上的所有用户设置它,但我已经尝试了所有我能想到的没有运气的东西.

我觉得很奇怪的是管理员用户可以使用netstat -a查看分配的端口,但它们根本没有出现使用netsh http show urlacl ...是指示出错了吗?

wix netsh

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