小编The*_*dor的帖子

Gradle插件项目版本号

我有一个使用project.version变量的gradle插件.

但是,当我更改build.gradle文件中的版本时,插件中的版本不会更新.

为了显示:

插入

// my-plugin
void apply(Project project) {
  project.tasks.create(name: 'printVersionFromPlugin') {
    println project.version
  }
}
Run Code Online (Sandbox Code Playgroud)

的build.gradle

version '1.0.1' // used to be 1.0.0

task printVersion {
  println project.version
}

apply plugin: 'my-plugin'
Run Code Online (Sandbox Code Playgroud)

结果

> gradle printVersion
1.0.1
> gradle printVersionFromPlugin
1.0.0
Run Code Online (Sandbox Code Playgroud)

plugins gradle

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

MATLAB kMeans并不总是收敛于全局最小值

我在MATLAB中写了一个k-Means聚类算法,我想我会针对内置的MATLAB进行尝试kmeans(X,k).

但是,对于非常简单的四簇设置(见图),MATLAB kMeans并不总是收敛到最优解(左)而是(右).

我写的那个并不总是这样做,但是内置函数不应该能够解决这么简单的问题,总能找到最佳解决方案吗?

替代文字

matlab cluster-analysis machine-learning k-means

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

计算Python中相同值的元素数量

可能重复:
如何计算列表中元素的频率?

我希望计算列表中相同值的元素数量并返回一个dict:

> a = map(int,[x**0.5 for x in range(20)])
> a
> [0, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4] 

> number_of_elements_by_value(a)
> {0:1, 1:3, 2:5, 3:7, 4:4}
Run Code Online (Sandbox Code Playgroud)

我想这是一种直方图?

python counter histogram

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

找到高于岩石水位的高度

我目前正在帮助一个从事地球物理项目工作的朋友,我不是一个图像处理专家,但是玩这些问题很有趣.=)

目的是估计从表面到顶部从水中伸出的小岩石的高度.

实验设备将是安装在距离计上的~100万像素摄像头,内置激光指示器."操作员"将指向岩石,按下触发器,该触发器将记录沿着岩石照片的距离,该照片将位于图像的中心.

可以假设设备始终保持在水上方的固定距离处.

我认为有很多问题需要克服:

  1. 照明条件

    • 根据一天中的时间等,岩石可能比水更亮或相反.
    • 有时岩石的颜色会非常接近水面.
    • 阴影的位置将在一整天内移动.
    • 根据水的粗糙程度,有时可能会在水中反射岩石.
  2. 多样

    • 岩石形状不均匀.
    • 根据岩石类型,地衣等的生长,改变岩石的外观.

幸运的是,测试数据并不缺乏.水中的岩石图片很容易获得.以下是一些示例图片: 替代文字 我在图像上运行了边缘检测器,尤其是 在第四张图片中,对比度差,很难看到边缘: 替代文字 任何想法将不胜感激!

image-processing computer-vision

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

Java TreeMap自定义比较器奇怪的行为

我正在尝试创建一个Map带有排序的键,首先按字母顺序排序,最后按数字排序.为此,我使用了TreeMap一个自定义Comparator:

public static Comparator<String> ALPHA_THEN_NUMERIC_COMPARATOR =
    new Comparator<String> () {

        @Override
        public int compare(String first, String second) {
            if (firstLetterIsDigit(first)) {
                return 1;
            } else if (firstLetterIsDigit(second)) {
                return -1;
            }
            return first.compareTo(second);
        }
    };

private static boolean firstLetterIsDigit(String string) {
    return (string == null) ? false : Character.isDigit(string.charAt(0));
}
Run Code Online (Sandbox Code Playgroud)

我写了下面的单元测试来说明出了什么问题:

@Test
public void testNumbericallyKeyedEntriesCanBeStored() {
    Map<String, String> map = new HashMap<>();
    map.put("a", "some");
    map.put("0", "thing");
    TreeMap<String, String> treeMap = new TreeMap<>(ALPHA_THEN_NUMERIC_COMPARATOR);
    treeMap.putAll(map);

    assertEquals("some", …
Run Code Online (Sandbox Code Playgroud)

java treemap comparator

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

Python中的组合

我有一种一级树结构:

替代文字

其中p是父节点,c是子节点,b是假设分支.

我想在约束条件下找到所有分支组合,只有一个父级只能分支到一个子节点,而两个分支不能共享父级和/或子级.

例如,如果combo是一组组合:

combo[0] = [b[0], b[3]]
combo[1] = [b[0], b[4]]
combo[2] = [b[1], b[4]]
combo[3] = [b[2], b[3]]
Run Code Online (Sandbox Code Playgroud)

我认为这就是全部.=)

对于这种结构的任意树,如何在Python中自动获得这一点,即p:s,c:s和b:s的数量是任意的.

编辑:

它不是一棵树,而是一个二分有 向无环图

python combinatorics bipartite directed-acyclic-graphs

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

Solr在排序中组合日期字段

我们有一些文档被索引,其中包含d1一些文档和d2其他文档的日期,我们希望根据哪一个可用的操作系统对它们进行排序.

sort=d1 desc, d2 desc
Run Code Online (Sandbox Code Playgroud)

将与文档进行排序d1seperatly与文档d2,就像这样:

d1: 2014-03-12
d1: 2010-03-12
d2: 2013-03-12
d2: 2011-03-12
Run Code Online (Sandbox Code Playgroud)

我们想要的是一切如下:

d1: 2014-03-12
d2: 2013-03-12
d2: 2011-03-12
d1: 2010-03-12
Run Code Online (Sandbox Code Playgroud)

不幸的是,使用新的公共字段重新索引所有文档不是一种选择.

sorting solr

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

RxJava通过匹配属性值来连接可观察流

可以说我有两个可观察的流

Observable<Book> books;
Observable<Movie> movies;
Run Code Online (Sandbox Code Playgroud)

如果它们具有匹配的属性,我如何加入这些?像下面的psudo代码:

Observable<BookMoviePair> pairs = books.join(movies)
    .where((book, movie) -> book.getId() == movie.getId()))
    .return((book, movie) -> new BookMoviePair(book, movie));
Run Code Online (Sandbox Code Playgroud)

java reactive-programming rx-java

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

排序同时保留python中的顺序

按价值对浮动列表进行排序的最佳方法是什么,同时仍保留初始订单的记录.

即排序:

a=[2.3, 1.23, 3.4, 0.4]
Run Code Online (Sandbox Code Playgroud)

返回类似的东西

a_sorted = [0.4, 1.23, 2.3, 3.4]
a_order = [4, 2, 1, 3]
Run Code Online (Sandbox Code Playgroud)

如果你抓住我的漂移.

python sorting

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

修复Python中的深度树

我想实现一个具有固定深度的树结构,即当将子项添加到leef节点时,整个树结构应该"向上移动".这也意味着可以同时存在多个根.见下面的示例: 替代文字 在此示例中,绿色节点在迭代1中添加,删除顶部节点(灰色)并使两个蓝色节点在K = 0和迭代1根节点处.

我该如何实现呢?

python tree data-structures

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