小编Pen*_*gin的帖子

查看移动文件的GIT历史记录

尽管阅读了很多关于GIT和移动文件的帖子,但我仍然很难理解如何追踪完整的历史记录.这样gitk myfile的建议在这里似乎只能说明历史,直到前一个举动.据我所知,GIT不会跟踪文件,只跟踪文件的内容.所以我肯定能够查看文件的完整演变,即使它被移动了吗?

任何人都可以指导我一个简单的好例子/教程吗?

我想看一个示例,其中一些文件被移动,更改和提交,然后显示单个文件的历史记录,移动和所有.我一直在看'日志',但这似乎与checkins有关.仍然会欣赏一些建议,即使它说我仍然在想太多的SVN.

git

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

Scala foldLeft在地图上

你如何使用Map.foldLeft?根据文档,它看起来像

foldLeft [B] (z: B)(op: (B, (A, B)) ? B) : B
Run Code Online (Sandbox Code Playgroud)

但我遇到了困难:

Map("first"->1,"second"->2).foldLeft(0)((a,(k,v)) => a+v )
Run Code Online (Sandbox Code Playgroud)

错误:不是合法的形式参数

错误指向k前面的空心括号.

scala scala-2.8 scala-collections

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

并行执行测试

我注意到SBT正在并行运行我的specs2测试.这似乎很好,除了我的一个测试涉及从文件读取和写入因此无法预测失败,例如见下文.

有没有更好的选择

  1. 将所有测试设置为串行运行,
  2. 为每个测试使用单独的文件名和拆卸?
class WriteAndReadSpec extends Specification{
  val file = new File("testFiles/tmp.txt")

  "WriteAndRead" should {
    "work once" in {
      new FileWriter(file, false).append("Foo").close
      Source.fromFile(file).getLines().toList(0) must_== "Foo"
    }
    "work twice" in {
      new FileWriter(file, false).append("Bar").close
      Source.fromFile(file).getLines().toList(0) must_== "Bar"
    }
  }

  trait TearDown extends After {
    def after = if(file.exists) file.delete
  }
}
Run Code Online (Sandbox Code Playgroud)

scala sbt specs2

26
推荐指数
1
解决办法
7676
查看次数

Hadoop是否适合运行我的模拟?

已经在Java中编写了一个随机模拟,它从磁盘上的几个CSV文件加载数据(总计大约100MB)并将结果写入另一个输出文件(不是很多数据,只是一个布尔值和几个数字).还有一个参数文件,对于不同的参数,预计模拟输出的分布会发生变化.要确定正确/最佳输入参数,我需要在多个输入参数配置中运行多个模拟,并查看每个组中输出的分布.每个模拟需要0.1-10分钟,具体取决于参数和随机性.

我一直在阅读有关Hadoop的内容,并想知道它是否可以帮助我运行大量的模拟; 我可能在不久的将来可以访问大约8台联网桌面计算机.如果我理解正确,map函数可以运行我的模拟并吐出结果,reducer可能是标识.

我担心的是HDFS,它似乎意味着巨大的文件,而不是一些小的CSV文件(没有一个足够大,甚至可以构成64MB的最小建议块大小).此外,每个模拟只需要每个CSV文件的相同副本.

Hadoop对我来说是错误的工具吗?

java simulation hadoop

16
推荐指数
1
解决办法
3228
查看次数

ggplot2通过常数因子转换轴

在ggplot2密度图(geom_density)中,我有以下y轴标签

  • 0.000
  • 0.005
  • 0.010
  • 0.015
  • 0.020

将它们改为类似的正确方法是什么?

  • 0
  • 10
  • 15
  • 20

可能会在标签上自动添加"10 ^ 3 x密度".在过去,我只是将我的数据相乘并手动更改标签,但在这种情况下,密度图为我生成了y轴数据.

我知道我可以编写类似的东西scale_y_continuous(trans="log10"),但是没有找到任何方法来做一个简单的乘法常量,或者定义一个自定义变换.

r ggplot2

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

stat_summary的ggplot2图例

如何创建一个图例,告知红十字是什么意思?

ggplot(results, aes(x=factor, y=proportionPositive)) +
geom_boxplot() +
stat_summary(fun.data = "mean_cl_normal", colour = "red", shape=4)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

r ggplot2

13
推荐指数
1
解决办法
5874
查看次数

限制ggplot + geom_density上的y轴范围

我正在使用geom_density来绘制具有非常薄的尾部的密度.我想限制y轴范围(因此分布的顶部将在屏幕外,尾部更清晰可见)但它在计算密度时丢弃了屏幕外的数据,而不仅仅是没有显示什么在屏幕外.

例如

这绘制了完整的分布,

testData = data.frame(counts=c(rep(1,5), 1:10))
ggplot(testData, aes(x=testData$counts))+geom_density()
Run Code Online (Sandbox Code Playgroud)

但是当y范围受到限制时,看起来分布支持较小.

ggplot(testData, aes(x=testData$counts))+geom_density()+scale_y_continuous(limits=c(0,0.1))
Run Code Online (Sandbox Code Playgroud)

如何在不丢弃数据的情况下"放大"y轴?

r ggplot2

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

Scala测试与类型浓缩

例如,我已经变得依赖于类型丰富

object MyImplicits{
  implicit class RichInt(i: Int){
    def complexCalculation: Int = i * 200 
  }
}
Run Code Online (Sandbox Code Playgroud)

我在这样的代码中使用的

object Algorithm{
  def apply(rand: Random) = {
    import MyImplicits._
    rand.nextInt.complexCalculation + 1
  }
}
Run Code Online (Sandbox Code Playgroud)

但是我现在如何隔离和单元测试算法呢?特别是,我想嘲笑这样的实现complexCalculation:

class MyAlgorithmTest extends FreeSpec with MockitoSugar{
  import org.mockito.Mockito.when

  "MyApgorithm" {
    "Delegates complex calculation" in {
      val mockRandom = mock[Random]
      when(mockRandom.nextInt()).thenReturn(1)

      // This wouldn't work, but is the kind of thing I'm looking for
      //when(1.complexCalculation).thenReturn(2)
      val expected = 1 * 2 + 1

      val result = MyAlgorithm(mockRandom) …
Run Code Online (Sandbox Code Playgroud)

unit-testing dependency-injection scala mockito scalatest

11
推荐指数
1
解决办法
496
查看次数

OpenCL是否适合基于代理的模拟?

我正在学习Scala,目的是使用actor并发编写基于代理的模拟.我目前对OpenCL知之甚少,在我潜入之前,有人可以告诉我它是否可能适合/兼容基于代理的模拟?

如果是这样,那么ScalaCL看起来非常有吸引力.

modeling scala opencl agent-based-modeling scalacl

10
推荐指数
1
解决办法
1567
查看次数

如何在SBT中为所有子项目设置默认依赖项?

试图了解如何设置SBT 子项目.为我的所有子项目设置默认依赖项的正确方法是什么?

我试过这个,但是我的子项目没有找到任何依赖项(它们下载得很好).

import sbt._

class MyProjects(info: ProjectInfo) extends DefaultProject(info)
{
  val projA = project("projA", "ProjectA")
  val projB = project("projB", "ProjectB")

  val akkaRepo = "Akka maven2 repo" at "http://www.scalablesolutions.se/akka/repository/"
  val multiverseRepo = "Multiverse maven2 repo" at "http://multiverse.googlecode.com/svn/maven-repository/releases/"
  val guiceyFruitRepo = "GuiceyFruit Maven2 repo" at "http://guiceyfruit.googlecode.com/svn/repo/releases/"
  val jBossRepo = "JBoss maven2 repo" at "https://repository.jboss.org/nexus/content/groups/public/"

  val junit = "junit" % "junit" % "4.5" % "test"
  val scalatest = "org.scalatest" % "scalatest" % "1.2" % "test"
  val akka = "se.scalablesolutions.akka" % "akka-core_2.8.0" …
Run Code Online (Sandbox Code Playgroud)

scala sbt

10
推荐指数
1
解决办法
3071
查看次数