小编SFu*_*n28的帖子

是否有像data.frame的rollapply这样的函数

可能重复:
可以`ddply`(或类似)做一个滑动窗口?

是否有像rollapply(标准R或CRAN包中)这样的函数在data.frame上运行,但不会将其转换为矩阵.rollapply可以与data.frame一起使用,但如果data.frame具有混合类型,则每个数据窗口都将转换为字符(矩阵).

我更喜欢支持width,na.pad,align等的函数,就像rollapply一样

使用混合类型的任何data.frame

test = data.frame( Name = c( "bob" , "jane" , "joe" ) , Points = c( 4 , 9 , 1 ) )

假设您想要使用窗口大小2进行滚动.使用data.frame调用FUN的第一次迭代,该data.frame仅包含test的第1行和第2行.

所以RollapplyThatRespectsDataFrame( ... , FUN = function( x ) { ... } )在第一次迭代时会设置x = data.frame( Name = c( "bob" , "jane" ) , Points = c( 4 , 9 ) )

第二次迭代是一个data.frame,其中包含第2行和第3行test.

基本上这个新函数与rollapply做同样的事情,除了它与data.frames一起正常工作.它不会转换为矩阵.

r

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

确定同一周的日期

给定日期向量(可能跨越多年):

exampleDates = as.Date( 1 : 15, origin = as.Date( "2012-12-25" ) )

我想生成一个标识符,将日期分为几周.所以假设一个日历从周日开始:

  • 26日到29日将产生相同的标识符
  • 30日到5日有相同的身份证
  • 6日到9日有相同的身份证

这是一个有缺陷的尝试:

strftime( exampleDates , format = "%Y%W" )

它将第31个和第1个视为不同的星期(毫不奇怪).我正在寻找类似的东西strftime,它将生成一个标识符(字符,数字,等等),我可以使用它来按周分组日期.

我相信已经有一些聪明的功能了.

r

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

CreateMany与种子有什么关系?

参数的CreateMany重载T seed实际上做了什么?我试图播种,但种子似乎对创建的对象没有影响.例如,我期待如果我的种子具有类型的属性string,那么:

  • 字符串值将用于在所有新创建的对象中填充该属性

  • 或者在所有新创建的对象中设置该属性时,字符串值将用作前缀

c# unit-testing autofixture

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

在HangFire中,我可以使用队列名称而不是使用队列属性进行排队吗?

文档说明您可以通过使用Queue要调用的方法的属性来指定队列.这假设您始终希望在同一队列上执行方法.是否有一种方法可以调用进程Enqueue来指定要将作业放入队列的名称(有效地将决策权交给作业生成器,而不是作业的定义).

hangfire

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

CallContext.SetData() - 当线程变为活动 - 非活动 - 活动(TPL)时,对象是否可用?

伙计们,

假设我使用来自线程10,11,12的CallContext.SetData()来存储三个新的对象Car实例.这些线程完成执行.然后我执行另一个使用线程10,11,12的多线程操作(可能与第一个不同的操作).GetData()将检索我存储的相同三个对象吗?或者现在上下文有些不同,那些对象消失了?

我的特定用例是任务并行库.我正在使用TPL来并行化一些操作,我想了解在TPL调用之间通过CallContext.SetData()存储的数据会发生什么.

编辑
Per @wageoghe建议我尝试了ThreadLocal并且它有效!

更新代码以证明它:

using System;
using System.Threading;
using System.Threading.Tasks;

namespace TlsTest
{

    public class Program
    {

        public static void Main()
        {
            Console.WriteLine( "-------using threadpool---------" );
            UseThreadPool();
            Console.WriteLine( "-------using tasks---------" );
            UseTasks();
            Console.WriteLine( "-------using parallel for---------" );
            UseParallelFor();
            Console.ReadKey();
        }

        public static void UseThreadPool()
        {

            var finish = new CountdownEvent( TotalThreads );

            for ( int i = 0 ; i < TotalThreads ; i++ )
            {
                ThreadPool.QueueUserWorkItem( x =>
                {
                    int id = Thread.CurrentThread.ManagedThreadId;

                    Thread.Sleep( SleepMilliseconds ); …
Run Code Online (Sandbox Code Playgroud)

.net .net-4.0 .net-3.5 task-parallel-library

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

Hadoop的第一个版本何时发布?

何时将Hadoop的第一个版本发布给公众?任何支持链接?
编辑
我应该更清楚 - 我问这个问题,因为维基百科的文章,我在Hadoop上找到的最好的资源,并不清楚该程序何时首次向公众开放.

hadoop

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

用于保留> = 1 NA值(与na.omit相反)的行的函数

是否有一个函数可以保存至少有一个NA的行,如果没有NA则丢弃行...相反的na.omit()?我试过!na.omit()但是没用.

r

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

你重新分配==和!=到isTRUE(all.equal())?

一个以前的帖子促使我张贴了这个问题.这似乎是一个最佳实践,以重新分配==isTRUE(all.equal())(和!=!isTRUE(all.equal()).我想知道如果别人这样做在实践中?我才意识到,我使用==,并!=在整个代码库我做数字的平等.我的第一反应是,我需要做的完全刷新并转换为all.equal.但事实上,每次我使用==并且!=我想测试相等性(无论数据类型).事实上,我不确定这些操作除了相等之外还会测试什么.我确定我在这里错过了一些概念.有人可以启发我吗?我看到这种方法的唯一论据是,在某些情况下,由于容忍度,两个不相同的数字看起来是相同的all.equal.但我们被告知两个数字实际上相同的可能不会identical()因为它们是如何存储在内存中而通过.所以真的有什么不是默认的all.equal

r

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

RODBC失败:"投射规范的字符值无效" - Excel 2007

我正在尝试使用RODBC写入Excel2007文件,我一直在收到错误.我已经将问题简化为这个非常基本的情况,一个包含字符,数字,日期和逻辑数据类型的1行data.frame:

toWrite = data.frame( Name = "joe" , Date = as.Date("2011-01-01"), Value = 2 , Paid = FALSE )
xlFile = odbcConnectExcel2007( "REPLACE_WITH_XLSB_FILE_PATH" , readOnly = FALSE )
sqlSave( xlFile , toWrite , tablename = "worksheet1" , rownames = FALSE )
Run Code Online (Sandbox Code Playgroud)

错误:

Error in sqlSave(xlFile, toWrite, tablename = "worksheet1", rownames = FALSE) : 
  [RODBC] Failed exec in Update
22018 39 [Microsoft][ODBC Excel Driver]Invalid character value for cast specification 
In addition: Warning message:
In odbcUpdate(channel, query, mydata, coldata[m, ], test = …
Run Code Online (Sandbox Code Playgroud)

r rodbc

7
推荐指数
3
解决办法
8487
查看次数

使用foreach注册PSOCK集群 - R 2.14

我如何注册PSOCK集群(使用包并行创建)foreach?我目前正在使用registerDoSNOWdoSNOW软件包来注册snowSOCK集群.

r snow

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