问题列表 - 第4000页

矢量化我的想法:R中的矢量运算

所以早些时候我回答了自己关于在R中向量中思考的问题.但是现在我还有另一个问题,我无法"矢量化".我知道向量更快,循环更慢,但我无法弄清楚如何在向量方法中执行此操作:

我有一个数据框(出于感情上的原因,我喜欢称之为my.data),我想对其进行全面的边缘分析.我需要一次删除一些元素并"数值"数据框然后我需要通过仅删除下一个元素再次进行迭代.然后再做一次......再次......我的想法是对我的数据子集进行全面的边际分析.无论如何,我无法想象如何以矢量有效的方式做到这一点.

我缩短了代码的循环部分,它看起来像这样:

for (j in my.data$item[my.data$fixed==0]) { # <-- selects the items I want to loop 
                                            #     through
    my.data.it <- my.data[my.data$item!= j,] # <-- this kicks item j out of the list
    sum.data <-aggregate(my.data.it, by=list(year), FUN=sum, na.rm=TRUE) #<-- do an
                                                                         # aggregation

    do(a.little.dance) && make(a.little.love) -> get.down(tonight) # <-- a little
                                                                   #  song and dance

    delta <- (get.love)                                         # <-- get some love
    delta.list<-append(delta.list, delta, after=length(delta.list)) #<-- put my love
                                                                    #    in a vector 
}
Run Code Online (Sandbox Code Playgroud)

显然我在中间砍掉了一堆东西,只是为了让它不那么笨拙.目标是使用更高矢量效率的东西来移除j循环.有任何想法吗?

r vector

14
推荐指数
2
解决办法
6590
查看次数

如果与Switch Speed相对

由于编译器优化,Switch语句通常比等效的if-else-if语句更快(例如本文中描述的).

这种优化实际上如何运作?有没有人有一个很好的解释?

c# performance if-statement switch-statement

108
推荐指数
2
解决办法
6万
查看次数

Pacman在Java问题

对于我的大学任务,我必须制作一个可联网的pacman版本.我认为我最好先制作pacman的本地副本,然后扩展此功能以进行网络播放.

我不得不说,我对java GUI开发相对较新,并在java中使用这些功能.

我已经开始关注java中游戏开发的上述链接以及pacman游戏的一个例子.

我决定将迷宫表示为一个int数组,其中不同的值意味着不同的东西.但是当主游戏循环中的paint方法运行时,我正在用这种方法重绘整个迷宫.

    for (int i : theGame.getMaze())
    {
        if (i == 4)
        {
            g.setColor(mazeWallColour);
            g.fillRect(curX, curY, cellSize, cellSize);
            curX += 25;
        }
        else
        {
            curX += cellSize;
        }

        index++;


        // Move to new row
        if (index == 25)
        {
            index = 0;
            curX = 10;
            curY += cellSize;
        }
    }
Run Code Online (Sandbox Code Playgroud)

然而,这为我提供了不到1fps.虽然我已经注意到上面链接的示例使用类似的方式重绘每次调用paint方法,我相信这是在一个不可见的图像(有点像双缓冲[有点像第一个链接使用BufferStrategy]解释])什么是重绘迷宫的更好方法?

任何指针/建议都很有用.

感谢您的时间.

http://pastebin.com/m25052d5a - 主要游戏类.

编辑:我刚刚发现一些非常奇怪的事情发生后,试图看看执行了多长时间的代码.

在我添加的paintClear(Graphics g)方法中

ocean = sprites.getSprite("oceano.gif");
g.setPaint(new TexturePaint(ocean, new Rectangle(0,t,ocean.getWidth(),ocean.getHeight())));
g.fillRect(10, 10,getWidth() - 20,getHeight() - 110);
Run Code Online (Sandbox Code Playgroud)

这让整个事情顺利进行 - 然而当我删除这些线条时,整个事情变慢了?可能是什么导致了这个? …

java network-programming

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

一次移动两个WPF窗口?

我的主窗口产生了一个儿童窗口,它位于顶部,看起来像是主要的一部分.我想将子窗口与主窗口同步,但我不确定如何.

我的主窗口有我自己的标题栏,事件MouseLeftButtonDown调用此函数:

public void DragWindow(object sender, MouseButtonEventArgs args)
{
     DragMove();
     UpdateChildWindowPosition();
}
Run Code Online (Sandbox Code Playgroud)

这导致DragMove()在主窗口上执行,当我拖动标题栏时单独移动主窗口.直到我释放鼠标时才执行UpdateChildWindowPosition(),在鼠标中它读取一些元素坐标并设置子窗口位置 - 您会看到子窗口捕捉到不需要的位置.

如何让子窗口与主窗口同步移动?

.net c# wpf

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

.Net WFC/Web服务异常处理设计模式

我试图在.net wcf服务(特别是支持Silverlight的wcf服务)中提出一个简单易用的设计模式来处理错误.如果在服务方法中抛出异常,silverlight应用程序将看到一个CommunicationException,指出"远程服务器返回错误:NotFound --->",可能还有一个堆栈跟踪,具体取决于您的设置,这完全没有用,因为它没有告诉你实际的错误,通常真正的错误不是"NotFound".

阅读Web服务和wcf服务和异常,您需要抛出soap/wcf标准异常,例如FaultException或SoapException.因此,对于wcf服务,您需要将每个方法包装在try catch中,捕获每个异常,将其包装在FaultException中并抛出它.至少这是我的理解,如果我错了,请纠正我.

所以我创建了我的设计模式:

[ServiceContract(Namespace = "http://MyTest")]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class DataAccess
{
    /// <summary>
    /// Error class, handle converting an exception into a FaultException
    /// </summary>
    [DataContractAttribute]
    public class Error
    {
        private string strMessage_m;
        private string strStackTrace_m;

        public Error(Exception ex)
        {
            this.strMessage_m = ex.Message;
            this.strStackTrace_m = ex.StackTrace;
        }

        [DataMemberAttribute]
        public string Message
        {
            get { return this.strMessage_m; }
            set { this.strMessage_m = value; }
        }

        [DataMemberAttribute]
        public string StackTrace
        {
            get { return this.strStackTrace_m; }
            set …
Run Code Online (Sandbox Code Playgroud)

.net wcf web-services exception

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

"近似的"最大公约数

例如,假设您有一个浮点数列表,它大约是常见数量的倍数

2.468,3.700,6.1699

这大约是1.234的倍数.您如何描述这种"近似gcd",您将如何进行计算或估算呢?

与我对这个问题的回答密切相关.

language-agnostic algorithm math floating-point greatest-common-divisor

44
推荐指数
4
解决办法
7644
查看次数

将"this"传递给构造函数中的函数?

我可以从类构造函数中将"this"作为指针传递给函数,并在构造函数返回之前使用它指向对象的成员吗?

这样做是否安全,只要在函数调用之前正确初始化被访问的成员?

举个例子:

#include <iostream>

class Stuff
{
public:
    static void print_number(void *param)
    {
        std::cout << reinterpret_cast<Stuff*>(param)->number;
    }

    int number;

    Stuff(int number_)
        : number(number_)
    {
        print_number(this);
    }
};

void main() {
    Stuff stuff(12345);
}
Run Code Online (Sandbox Code Playgroud)

我认为这不起作用,但似乎.这种标准行为,还是仅仅是未定义的行为?

c++ constructor this

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

图书馆数据库系统设计

我有一个库,我想将它从旧系统迁移到新的优化系统.

旧库是使用MS Access(mdb文件)构建的,其中每本书本身就是一个文件.每本书由两个表组成,一个用于章节标题,第二个用于内容.还有一个mdb文件,其中包含所有书籍名称,每本书的页码,作者姓名和其他常规信息.

新的系统数据库引擎是MySQL,因此我有三种(可能)存储书籍的可能性:1-将所有书籍章节标题存储在一个表格中,将所有书籍内容存储在另一个巨大的表格中.2-将所有书籍章节标题存储在一个表格中,将每本书籍的内容存储在本书的表格中.(所以,如果我有5本书,我将获得1个章节标题和5个内容).3-将它们存储为旧系统的设计,每本书有两个表,一个用于章节标题,第二个用于它的内容.

我不喜欢使用多个数据库,一个数据库可以完美地完成作为wordpress.com托管的博客(yap,他们有庞大的数据库,当然他们使用其他技术,但我说的是数据库系统架构) .

该图书馆藏书超过500本,而且这个数字正在增加.

你怎么看?

database architecture database-design

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

如何在Windows XP上安排每日脚本运行?

我用Ruby写了一个脚本.我想在某个时间每天运行它.你是如何在Windows XP系统上那样做的?

我在机器上四处寻找并发现了"计划任务"控制面板,但它似乎与运行脚本没有任何关系,据我所知,"向导"提供的选项.

ruby windows cron windows-xp scheduled-tasks

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

如何从32位WOW进程获取Program Files文件夹路径(不是Program Files(x86))?

我需要从32位WOW进程获取本机(而不是WOW)程序文件目录的路径.

当我将CSIDL_PROGRAM_FILES(或CSIDL_PROGRAM_FILESX86)传递给SHGetSpecialFolderPath时,它返回WOW(Program Files(x86))文件夹路径.

如果可能的话,我宁愿避免使用环境变量.

我想比较一下我从注册表中读取的一些值,如果值指向我的应用程序的WOW或本机版本的路径,那么我的代码会执行某些操作,否则它会执行其他操作.要弄清楚我的应用程序的原生和WOW版本应该在哪里,我需要获得"Program Files(x86)"和"Program Files"的路径.

c++ windows 64-bit

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