小编the*_*ega的帖子

得到(年,月)最后X个月

我在python中有一个非常简单的事情:我需要(year,month)从今天开始(包括)最后x个月的元组列表.因此,对于x = 10和今天(2011年7月),命令应该输出:

[(2011, 7), (2011, 6), (2011, 5), (2011, 4), (2011, 3), 
(2011, 2), (2011, 1), (2010, 12), (2010, 11), (2010, 10)]
Run Code Online (Sandbox Code Playgroud)

只应使用python的默认日期时间实现.我提出了以下解决方案:

import datetime
[(d.year, d.month) for d in [datetime.date.today()-datetime.timedelta(weeks=4*i) for i in range(0,10)]]
Run Code Online (Sandbox Code Playgroud)

这个解决方案为我的测试用例输出了正确的解决方案,但我对这个解决方案不满意:假设一个月有四个星期,这根本不是真的.我可以取代weeks=4days=30这将使一个更好的解决方案,但它仍然是不正确的.

我想到的另一个解决方案是使用简单的数学并从月份计数器中减去1,如果月份计数器为0,则从年份计数器中减去1.这个解决方案的问题是:它需要更多的代码,也不是很易读.

那怎么能正确完成呢?

python datetime

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

插入符号:使用除了LOOCV和rpart之外的任何内容时出错

我正在尝试使用R插入符模块进行模型生成,我想使用一些交叉验证功能.我发现唯一合作的交叉验证函数rpartLOOCV(留下一个交叉验证).

以下代码抛出错误:

library(cart)
data(trees)
formula=Volume~Girth+Height
train(formula, data=trees,  method='rpart')
Run Code Online (Sandbox Code Playgroud)

警告消息:在nominalTrainWorkflow(dat = trainData,info = trainInfo,method = method,:重采样性能度量中存在缺失值).

这个错误意味着什么,如何让它消失?我在互联网上搜索,而不是一次点击此错误消息.我将错误追溯到rpart模型生成.它以某种方式输出此错误消息,所有其他模式生成方法工作正常!

如果我使用,一切正常LOOCV.

我将警告追溯到workflows.R文件,但我不明白为什么会抛出此警告.

> sessionInfo()
R version 2.15.0 (2012-03-30)
Platform: x86_64-pc-linux-gnu (64-bit)

locale:
 [1] LC_CTYPE=en_GB.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_GB.UTF-8        LC_COLLATE=en_GB.UTF-8    
 [5] LC_MONETARY=en_GB.UTF-8    LC_MESSAGES=en_GB.UTF-8   
 [7] LC_PAPER=C                 LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] parallel  stats     graphics  grDevices utils     datasets  methods  
[8] base     

other attached packages:
 [1] earth_3.2-3           plotrix_3.4           plotmo_1.3-1         
 [4] leaps_2.9             doMC_1.2.5            multicore_0.1-7 …
Run Code Online (Sandbox Code Playgroud)

r

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

JUNG(Java Graph):如何防止顶点和边缘标签重叠?

我目前正在使用Jung绘制图形(我的意思是图形而不是图表!).问题是顶点和边缘标签与顶点和边缘重叠.这会导致奇怪的图形.问题不受特定布局算法的约束(尽管我一直在使用FRLayout).

有没有可能告诉JUNG防止这些重叠?我希望这已经实施,唯一的问题是找到合适的选择!

java label graph

6
推荐指数
3
解决办法
8260
查看次数

并行执行许多AJAX请求,并在所有这些请求完成后运行

我正在尝试使用HTML中的JQuery完成以下操作序列.

  • 构建了一个URL列表
  • 每个URL都是使用$ .getJSON(url)并行请求的
  • 等待所有请求完成或失败(可能发生404)
  • 获取所有已完成的JSON请求的数据并执行某些操作.

我构建了下面发布的Java脚本代码.它完美地工作,除非其中一个请求由于404错误而失败:然后,$.when不运行,因为它在请求失败时立即中止.你能以某种方式覆盖ajax请求,所以它们不会失败,而是返回一个空源?

我已经阅读了这篇文章这篇文章,但它没有提供一个解决方案,可以在所有查询完成后运行代码.

function fetchData() {
    queries = [];
    //urls is initialized somewhere else containing all urls
    for(var url in urls) {
        queries.push($.getJSON(url));
    }

    $.when.apply(this, queries).done(function() {
        console.log("Finished all queries, got "+arguments.length+" results");
        //Now arguments is a array containing the results of all requests
    }

    //function returns instantly, no problem!
 }
Run Code Online (Sandbox Code Playgroud)

javascript ajax jquery json

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

如何修改和重新发布AOSP应用程序?

我对股票android电子邮件应用程序缺乏一个简单的功能感到恼火.由于此应用程序作为开源发布,我可以很容易地解决这个问题.

问题:如何以我和其他用户可以安装修改后的EMail应用程序(无root访问权限)的方式发布此修改?我尝试了以下方法:

  1. 通过大量复制,我能够使用标准的Eclipse/ant工具链构建EMail应用程序,而无需使用make-scripts的ASOP工具链.
  2. 现在安装此应用程序会导致错误,因为已经安装了包(显然,我没有更新的歌唱键)
  3. 在设备上禁用电子邮件应用程序也没有帮助,我仍然无法安装我的新应用程序.

我虽然在清单中更改应用程序的包名称,但它并不那么简单:您还必须将所有类移动到新包中.此外,正如您在AndroidManifest中看到的,应用程序定义了新的权限(com.android.email.permission.READ_ATTACHMENT)以及在安装修改后的包时导致重复错误的其他因素.这些权限是源中的字符串引用.

是手动修改每个文件,然后调试每个错误真的是我的问题的唯一解决方案?由于我修改并移动了每个文件,因此这些修改也会使新版本的EMail应用程序变得非常困难.

android package

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

Python中的Json:接收/检查重复键错误

json当在地图中有重复的键时,python 的模块会起到一些规范的作用:

import json
>>> json.loads('{"a": "First", "a": "Second"}')
{u'a': u'Second'}
Run Code Online (Sandbox Code Playgroud)

我知道这种行为在文档中指定:

RFC指定JSON对象中的名称应该是唯一的,但不指定应如何处理JSON对象中的重复名称.默认情况下,此模块不会引发异常; 相反,它会忽略除给定名称的最后一个名称 - 值对之外的所有内容:

对于我当前的项目,我绝对需要确保文件中没有重复的密钥,如果是这种情况,会收到错误/异常?如何实现这一目标?

我仍然坚持使用Python 2.7,因此适用于旧版本的解决方案对我来说最有帮助.

python json

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

Java,xml,XSLT:防止DTD验证

我使用Java(6)XML-Api对来自Web的html文档应用xslt转换.这个文件格式正确xhtml,因此包含有效的DTD-Spec(<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">).现在出现问题:Uppon转换XSLT-Processor尝试下载DTD并且w3-server通过HTTP 503错误拒绝这一点(由于w3的Bandwith限制).

如何防止XSLT-Processor下载dtd?我不需要我的输入文档验证.

来源是:

import javax.xml.transform.Source;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
Run Code Online (Sandbox Code Playgroud)

-

   String xslt = "<?xml version=\"1.0\"?>"+
   "<xsl:stylesheet version=\"1.0\" xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\">"+
   "    <xsl:output method=\"text\" />"+          
   "    <xsl:template match=\"//html/body//div[@id='bodyContent']/p[1]\"> "+
   "        <xsl:value-of select=\".\" />"+
   "     </xsl:template>"+
   "     <xsl:template match=\"text()\" />"+
   "</xsl:stylesheet>";

   try {
   Source xmlSource = new StreamSource("http://de.wikipedia.org/wiki/Right_Livelihood_Award");
   Source xsltSource = new StreamSource(new StringReader(xslt));
   TransformerFactory ft = TransformerFactory.newInstance();

   Transformer trans = ft.newTransformer(xsltSource);

   trans.transform(xmlSource, new StreamResult(System.out));
   }
   catch (Exception …
Run Code Online (Sandbox Code Playgroud)

java xml xslt

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

Android 权限:与“完全互联网访问”相反

在 Android 中,应用程序可以请求权限android.permission.INTERNET。Android 将 UI 翻译为“完全互联网访问”。

是否存在“限制互联网访问”之类的内容?这里的“”是什么意思?是否有任何其他权限可以启用 Internet 访问但仅限于特定站点?

我编写了一个应用程序,它只需要访问一个 url,并且只需要一个 HTTP 连接来下载该 url。我是否需要INTERNET-Permission 或者是否有更少的东西仍然可以满足我的需求?

permissions android

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

丢弃第一行和最后 n 行

data.table在 R 中有一个我想扔掉第一行和最后 n 行的地方。我想先应用一些过滤,然后截断结果。我知道我可以这样做:

example=data.table(row1=seq(1,1000,1),row2=seq(2, 3000,3))
e2=example[row1%%2==0]
e2[100:(nrow(e2)-100)]
Run Code Online (Sandbox Code Playgroud)

是否有可能在一行中执行此操作?我想到了这样的事情:

example[row1%%2==0][100:-100]
Run Code Online (Sandbox Code Playgroud)

这当然不起作用,但是是否有更简单的解决方案不需要额外的变量?

r data.table

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

如何指示结果为空的函数失败

我在 Scala 中有一个没有返回值的函数(所以unit)。此函数有时会失败(如果用户提供的参数无效)。如果我在 Java 上,我会简单地抛出一个异常。但是在scala上(虽然同样的事情是可能的),建议不要使用异常。

我完全知道如何使用Optionor Try,但只有当你有一些有效的东西可以返回时,它们才有意义。

例如,考虑addPrintJob(printJob: printJob): Unit将打印作业添加到打印机的(假想)命令。作业定义现在可能无效,应该通知用户这一点。

我看到以下两种选择:

  1. 无论如何都要使用异常
  2. 返回的东西从方法(如“打印作业标识”),然后返回Option/ Either/Try该类型的。但这意味着添加一个返回值只是为了错误处理。

这里的最佳做法是什么?

scala

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

标签 统计

android ×2

java ×2

json ×2

python ×2

r ×2

ajax ×1

data.table ×1

datetime ×1

graph ×1

javascript ×1

jquery ×1

label ×1

package ×1

permissions ×1

scala ×1

xml ×1

xslt ×1