我有一个Clojure映射,可能包含nil的值,我正在尝试编写一个函数来删除它们,但没有太大成功(我是新手).
例如:
(def record {:a 1 :b 2 :c nil})
(merge (for [[k v] record :when (not (nil? v))] {k v}))
Run Code Online (Sandbox Code Playgroud)
这导致了一系列地图,这不是我对合并的期望:
({:a 1} {:b 2})
Run Code Online (Sandbox Code Playgroud)
我想拥有:
{:a 1, :b 2}
Run Code Online (Sandbox Code Playgroud) 给定:给定2D平面中的一组N个点(x和y坐标),以及对应于每个点的一组N个半径.我们将参考一个点的光盘,因为光盘以其半径为中心.
问题:聚集点.点簇使得每个点EITHER落入簇中至少一个其他点的盘内,或者簇中的至少一个其它点落入其盘内.单点集群不计为集群.
我需要一种算法来有效地计算它(最好不要求助于复杂的空间散列技术,如kd-trees).我可以满足O(N ^ 2)运行时间但绝对不超过O(N ^ 3).我觉得这应该很简单但是我已经陷入了我的聚类条件的非互惠性质.
本质上,我希望填写C函数原型:
int cluster_points(
size_t n,
point_t *pt, // length n list of points
double *radius, // length n list of radii for each point
int *cluster, // length n list of cluster indexes; -1 if not clustered
size_t *ncluster // number of clusters (number of distinct non -1 entries in cluster)
);
Run Code Online (Sandbox Code Playgroud)
这不是功课.我需要这个作为聚类复数的矩阵算法的一部分.
问题:我正在测试我正在开发的软件包中的函数,并且想知道是否可以建议一些如何执行此操作的一般指导原则.这些功能包括大量的统计建模,转换,子集和绘图.是否有"标准"或足够的测试?
一个例子:提示我问这个问题的测试,
函数dtheta:
dtheta <- function(x) {
## find the quantile of the mean
q.mean <- mean(mean(x) >= x)
## find the quantiles of ucl and lcl (q.mean +/- 0.15)
q.ucl <- q.mean + 0.15
q.lcl <- q.mean - 0.15
qs <- c(q.lcl, q.mean, q.ucl)
## find the lcl, mean, and ucl of the vector
c(quantile(x,qs), var(x), sqrt(var(x))/mean(x))
}
Run Code Online (Sandbox Code Playgroud)
第1步:制作测试数据:
set.seed(100) # per Dirk's recommendation
test <- rnorm(100000,10,1)
Run Code Online (Sandbox Code Playgroud)
第2步:将函数的预期输出与函数的实际输出进行比较:
expected <- quantile(test, c(0.35, 0.65, 0.5))
actual <- dtheta(test)[1:3] …Run Code Online (Sandbox Code Playgroud) 我有一个Validator类,它创建一个类的实例Validations,其中包含所有验证方法.当进行验证,__call在Validator使用派遣一个电话来.Validator->validate_methodValidations->method
例如,有一个Validations被调用的方法length_of.运行以下代码时:
$v = new Validator();
$v->validate_length_of(...);
Run Code Online (Sandbox Code Playgroud)
执行类中的length_of验证Validations.
为了确保__call不会尝试调度到无效或非公共Validation方法,我ReflectionMethod用来检查指定的方法:
$method = new ReflectionMethod($this->validations, $validation_method);
if (!$method->isPublic())
{
// error
}
Run Code Online (Sandbox Code Playgroud)
我很确定这是确定方法是否公开的唯一方法,但我不确定Reflection是否适合生成代码.这是代码味吗?
使用以下代码,我在thisRange.setStart行上得到一个INDEX_SIZE_ERR:DOM异常1错误.代码用于遍历整个页面,查找searchString的实例,然后在该搜索字符串前面添加一个链接.例如,如果它找到了5个字符串实例,那么现在它将在第一个字符串前面添加链接,但在第二个字符串上添加错误并停止,留下四个没有链接的单词.有任何想法吗?
if(searchString.length > 0) { // make sure the string isn't empty, or it'll crash.
// Search all text nodes
for(var i = 0; i < textNodes.length; i++) {
// Create a regular expression object to do the searching
var reSearch = new RegExp(searchString,'gmi'); // Set it to 'g' - global (finds all instances), 'm' - multiline (searches more than one line), 'i' - case insensitive
var stringToSearch = textNodes[i].textContent;
while(reSearch(stringToSearch)) { // While there are occurrences of the searchString …Run Code Online (Sandbox Code Playgroud) 我有以下代码:
import operator
def stagger(l, w):
if len(l)>=w:
return [tuple(l[0:w])]+stagger(l[1:], w)
return []
def pleat(f, l, w=2):
return map(lambda p: f(*p), stagger(l, w))
if __name__=="__main__":
print pleat(operator.add, range(10))
print pleat(lambda x, y, z: x*y/z, range(3, 13), 3)
print pleat(lambda x: "~%s~"%(x), range(10), 1)
print pleat(lambda a, b, x, y: a+b==x+y, [3, 2, 4, 1, 5, 0, 9, 9, 0], 4)
Run Code Online (Sandbox Code Playgroud)
重要部分:Pleat接受任何函数和任何序列,并将该序列中的第一批元素作为参数传递给接收函数.
有没有办法在Haskell中做到这一点,还是我在做梦?
目前
我有一个包含标记,编码如下:
@register.inclusion_tag('forms/my_insert.html', takes_context=True)
def my_insert(context):
# set up some other variables for the context
return context
Run Code Online (Sandbox Code Playgroud)
在我的模板中,我通过放入包含它 {% my_insert %}
新功能请求
我们现在想要测试一个新的布局 - 它只是对模板的更改,而不是对上下文变量的更改.我通过拨打第一个来完成这个
@register.inclusion_tag('forms/my_new_insert.html', takes_context=True)
def my_new_insert(context):
return my_insert(context)
Run Code Online (Sandbox Code Playgroud)
要使用新模板,我必须使用:
{% ifequal some_var 0 %}
{% my_insert %}
{% endifequal %}
{% ifnotequal some_var 0 %}
{% my_new_insert %}
{% endifnotequal %}
Run Code Online (Sandbox Code Playgroud)
问题
有没有办法在函数中选择设置模板标签上下文的模板?
我想它可能是这样的:
@register.inclusion_tag('forms/my_insert.html', takes_context=True)
def my_insert(context):
# set up some other variables for the context
if context['some_var'] == 0:
context['template'] = 'forms/my_insert.html'
else: …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用LayoutInfator来创建视图.我正在考虑的一个选项是使用默认的android.R.layout文件.但是我发现很难找到这些文件/它们的外观.如果我能找到一些帮助来找到源代码,那将会很棒.我需要找到那些xml文件中各个元素的id.
谢谢
我试图在界面构建器中构建一个可伸缩的图像.这甚至可能吗?我在网上搜索过,无法找到合适的解决方案.我很感激任何答案.