小编bde*_*caf的帖子

清理克隆上的git子模块的工作流程是什么?

有关如何"本地"删除子模块的有用答案 - 如何删除子模块?

但是我有问题我在几台机器上克隆了我的仓库.两个我每个月只工作一到两次.因此,当我更新那些分支时虽然不再跟踪子模块,但文件仍然在工作分支上.git/modules.在不止一次的情况下,我偶然检查了一些.在其他情况下,由于存在这些不需要的文件/目录,我的构建失败.

我想我可以保留一个要删除的东西列表 - 但这似乎不对 - 另一个人会怎么做删除,我没有git之外的信息删除什么?

那么清理克隆的建议方法是什么?

更新

对我来说似乎是最新的git --version回报git version 2.18.0(2018-09-01).

我添加了一个可重现的例子.

建立

mkdir parent
cd parent 
git init
git submodule add https://github.com/jakesgordon/javascript-tetris.git
git commit -am add

cd ..
git clone parent clone
cd clone
git submodule update --init
Run Code Online (Sandbox Code Playgroud)

现在两个目录都包含带有签出文件的子模块javascript-tetris/. .gitmodules包含子模块.

当我做

cd parent
git rm javascript-tetris
git commit -am delete
Run Code Online (Sandbox Code Playgroud)

在父目录中,目录已经javascript-tetris消失,并且.gitmodules删除了该条目.但仍有一个人口稠密的.git/modules/javascript-tetris目录.

在克隆方面:

git pull
Run Code Online (Sandbox Code Playgroud)

发出警告:warning: unable to rmdir 'javascript-tetris': …

git git-submodules

16
推荐指数
2
解决办法
233
查看次数

如何使用stans integrate_ode x输入?

最近斯坦已经添加了这种integrate_ode方法.不幸的是,我能找到的唯一文件是stan参考手册(第191页).我有一个需要一些驱动信号的模型.据我了解参数x_r,x_i应该用于此.

为了一个具体的例子,我们假设我想从文档中实现以下更改的示例:

 real[] sho(real t,
               real[] y,
               real[] theta,
               real[] x_r,
               int[] x_i) {
      real dydt[2];
      real input_signal; // Change from here!!!
      input_signal <- how_to(t, x_r, x_i); 
      dydt[1] <- y[2] + input_signal; // Change to here!!!
      dydt[2] <- -y[1] - theta[1] * y[2];
      return dydt;
}
Run Code Online (Sandbox Code Playgroud)

输入信号应该是输入的时间序列 - 假设我提交input_signal_vector <- sin(t) + rnorm(T, sd=0.1)(这应该是时间点的信号ts),我打算用于input_signal最接近的时间值.

我能想象的唯一方法是一个可以Concat的tsinput_signal_vector在x_r,然后这个数组中进行搜索.但我无法想象这是这些参数的预期用途.这也是非常低效的.

因此,如果有人能够证明这种情况应该如何解决,我将非常感激.

ode stan

8
推荐指数
0
解决办法
373
查看次数

如何使用带有R CMD构建的Makefile

我正在开发一个R包.它基于仅使用Makefile的项目.大部分内容都很容易转换为R CMD build工作流程.然而,我需要创建的pdfs有点复杂,除非我修补,否则我没有把它们弄好 - 到目前为止,我想到了如何使用Makefile.

在R包文档中,我找到了使用Makefile作为源代码甚至是vignet的参考.

我不明白应该如何应用这些.从这些文档中我得到的印象Makefiles将在进程中被调用,R CMD build但是当我将Makefile放在所描述的目录中时,它们将被忽略.然而,R CMD check识别它们并输出通过测试.

我也看到了一些R CMD build内部调用的Makefile - 但我一直想知道这些在我使用时会如何执行install.packages.这似乎不对 - 我的意思是为什么R CMD check这些如果它不关心.R包中还有关于添加的这个页面SystemRequiremens: GNU make - 为什么这个文件你不使用?

那么现在最好的做法是什么?我可以看一下野外的例子吗?

更新

正如我被问到一个例子

我想构建一个与"编写包装晕影"中描述的相似的小插图.有一个主Latex文件,其中包含几个Rnw文件.具体的困境是:

  1. 如何构建pdf插图?
  2. 我如何强制执行依赖 - 显然rnws需要先渲染
  3. Rnw需要慢慢计算的数据,既不打算进入包,也不打算进入repo(它是几千兆字节) - 但它在构建过程中会重复使用几次.

到目前为止我用Makefile做了,一般模式是这样的:

tmp/test.pdf: tmp/test.tex tmp/rnw1.tex tmp/rnw2.tex
    latexmk -outdir=$(@D) $<

tmp/%.tex: r/%.rnw
    Rscript -e "knitr::knit('$<', output='$@')"

tmp/rnw1.tex tmp/rnw2.tex: tmp/slowdata.Rdata

tmp/slowdata.Rdata: r/ireallytakeforever.R
    Rscript $<
Run Code Online (Sandbox Code Playgroud)

makefile r

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

需要帮助加速dplyr聚合

tl.dr. 我有一个聚合问题,我之前没有在文档中看到过.我设法完成它,但它对于预期的应用程序来说太慢了.我通常使用的数据有大约500行(我的直觉告诉我这对于dplyr来说并不多)并且根据system.time它运行大约4秒.我的困境是我想反复进行优化运行,目前我正在考虑运行时间.

你有没有看到我可以刮胡子的东西?

如果需要,我也可以发送一些我使用的数据.

算法 我有一个数据集:

sample_dataset <- data_frame( starts = c(1000, 1008, 1017, 2000, 2020, 3000),
                          ends   = c(1009, 1015, 1020, 2015, 2030, 3010),
                          v = list(rep(1,10), rep(2,8),rep(3,4), 
                                   rep(4,16), rep(5,11), rep(6,11)) )
Run Code Online (Sandbox Code Playgroud)

所以每一行都编码一个信号和一个开始和结束索引.我想将所有closeness距离小于(例如10)的线聚合成一条线.如果重要的starts是订购.

输出应该是:

structure(list(inds = 1:3, starts = c(1000, 2000, 3000), ends = c(1020,
2030, 3010), v = list(c(1, 1, 1, 1, 1, 1, 1, 1, 3, 3, 2, 2, 2,
2, 2, 2, 0, 3, 3, 3, 3), c(4, 4, 4, …
Run Code Online (Sandbox Code Playgroud)

r dplyr

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

如何定义部分数据时,如何让mathematica执行求和?

我有这样的总和:

Sum[1 + x[i], {i, 1, n}]
Run Code Online (Sandbox Code Playgroud)

Mathematica不再简化它了.我需要做什么才能将其翻译成:

n + Sum[x[i],{i,1,n}]
Run Code Online (Sandbox Code Playgroud)

wolfram-mathematica sum

5
推荐指数
3
解决办法
1388
查看次数

在MATLAB中重构

我完成了一项徒劳无功的任务,包括我前任所写的一些程序.一堆乱糟糟的无组织代码.

到目前为止,我只知道自动识别(Ci).所以我想知道你是否可以推荐一些工具.

我遇到的一些关键问题:

  • 通过整个文件激发对相同结构的分配
  • 这是一个很大的代码文件 - 我想拆分它
  • 相当多的代码产生了从未使用过的结果

更新漂亮的部分我发现Emacs的Matlab模式可以打破过长的线条非常合理.

matlab refactoring automated-refactoring

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

不清楚为什么 Data.Ratio 中的函数没有公开以及如何解决

我正在使用Data.Ratio连分数的收敛)实现一个算法。但是,我遇到了两个障碍:

  • 该算法从分数开始1%0- 但这会引发零分母异常。
  • 我想模式匹配构造函数 a :% b

我正在探索hackage。一个特别是似乎正在使用这些功能(例如定义infinity = 1 :% 0,或模式匹配numerator)。

作为初学者,我也很困惑在哪里确定(%)numerator等暴露给我,但不是infinity(:%)

我已经使用整数元组做了一个肮脏的解决方法,但是为如此微不足道的事情重新发明轮子似乎很愚蠢。也很高兴了解如何阅读公开哪些功能的源代码。

haskell module numeric module.exports

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

你可以在 ggplot2 中堆叠箱线图吗?

这是我的情节的一个例子。请注意箱线图如何彼此相邻。我想弄清楚是否有办法将箱线图堆叠在一起。 示例图

r ggplot2 boxplot

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