小编got*_*nes的帖子

在等式中将LaTeX分数项排版更大

基于Fisher精确检验,我在LaTeX中有以下公式.(注意:需要使用amsmath\binom.)

\begin{equation}
    P(i,j) = \sum_{x=|N(V_i) \cap V_j|}^{\min\{|V_j|, |N(V_i)|}
    \frac{ \binom{|V_j|}{x} \binom{|V - V_j|}{|N(V_i)| - x}}
    {\binom{|V|}{|N(V_i)|}}
\end{equation}
Run Code Online (Sandbox Code Playgroud)

这使得小数部分呈现非常小的,难以阅读的文本:

分数中带有小文本的方程式

我希望我的文本更具可读性,如下例所示:

分数中可读文本的等式http://www.plosone.org/article/fetchObject.action?uri=info:doi/10.1371/journal.pone.0005313.e002&representation=PNG

我可以使用什么技巧让LaTeX同样渲染我的方程式?

latex equation formula mathematical-typesetting

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

使用LaTeX Beamer将引文文本放在同一张幻灯片上

默认情况下,\cite在LaTeX的Beamer类中使用将演示结束时的实际引文信息放在包含参考书目的单独幻灯片上.如何获取引文信息,而不是与引文相同的幻灯片(大多数演示文稿的预期,有礼貌的做法)?

formatting latex citations beamer

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

对Git,Mercurial和Bazaar使用相同的忽略文件是否安全?

Git的,水银和集市似乎都具有相似的格式为他们忽略文件(.gitignore,.hgignore,.bzrignore[又见BZR模式]).

为了改善全局忽略文件的同步,将一个用作实际文件并将其他两个符号链接到该文件是否安全?换句话说,是否有任何危险使我$HOME/.gitignore的规范忽略文件和做

ln -s $HOME/.gitignore $HOME/.hgignore
ln -s $HOME/.gitignore $HOME/.bazaar/ignore
Run Code Online (Sandbox Code Playgroud)

或者他们之间是否存在一些微妙的差异会在某些时候咬我?

git mercurial dvcs bazaar ignore

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

如何在Python中限制对Web服务的请求率?

我正在开发一个与Web服务API接口的Python库.像我遇到的许多Web服务一样,这个服务请求限制请求的速率.我想limit为类实例提供一个可选参数,如果提供的话,它将保存传出请求,直到指定的秒数通过.

我理解一般情况如下:类的实例通过方法发出请求.当它发生时,该方法发出一些信号,在某处设置一个锁定变量,并开始倒数计时器的秒数limit.(很可能,锁定是倒数计时器本身.)如果在此时间范围内发出另一个请求,它必须排队,直到倒数计时器达到零并且锁定被解除; 此时,队列中最早的请求被发送,倒计时器被重置并重新锁定锁定.

这是线程的情况吗?我还没有看到另一种方法吗?

倒计时器和锁定应该是实例变量,还是它们属于该类,以便该类的所有实例都保存请求?

另外,在库中提供速率限制功能通常是个坏主意吗?我的理由是,默认情况下,倒计时为零秒,库仍然允许开发人员使用库并提供他们自己的速率限制方案.鉴于任何使用该服务的开发人员都需要对请求进行速率限制,但我认为,为图书馆提供速率限制手段会更方便.

无论在库中是否设置了速率限制方案,我都希望使用该库编写应用程序,因此建议的技术将派上用场.

非常感谢您的建议!

克里斯

python web-services rate-limiting

9
推荐指数
2
解决办法
7395
查看次数

numpy布尔数组的高效序列化

我有数十万个NumPy布尔数组,我想用它作为字典的键.(这个字典的值是我们观察每个数组的次数.)由于NumPy数组不可清除,因此不能用作键本身.我想尽可能高效地序列化这些数组.

我们有两个效率要求定义,这里:

  1. 内存使用效率; 越小越好
  2. 计算时间序列化和重构数组的效率; 时间越少越好

我希望在这两个相互竞争的利益之间取得良好的平衡,但是,有效的内存使用对我来说更重要,我愿意牺牲计算时间.

我希望有两个属性可以使这项任务更容易:

  1. 我可以保证所有阵列都具有相同的大小和形状
  2. 数组是布尔值,这意味着可以简单地将它们表示为1s和0s的序列,即一个位序列

是否有一个高效的Python(2.7,或者,如果可能的话,2.6)数据结构,我可以将它们序列化为(可能是某种字节结构),并且你能提供一个数组和这个结构之间的转换的例子,以及结构回到原来的数组?

请注意,不必存储有关每个索引是否为True或的信息False; 一个简单地存储数组所在索引的结构True就足以重构数组.

一个充分的解决方案适用于一维数组,但一个好的解决方案也适用于二维数组,一个很好的解决方案适用于更高维度的数组.

python serialization dictionary numpy

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

查找子对象的父模拟对象、父对象的子模拟对象

是否可以识别子MagicMock模拟对象实例的父模拟对象实例,或父模拟对象实例的子级?例如,如果我有以下代码

>>> from unittest.mock import MagicMock
>>> parent_mock = MagicMock()
>>> child_mock1 = parent_mock(a=1)
>>> child_mock2 = parent_mock(b='spam')
Run Code Online (Sandbox Code Playgroud)

我稍后如何确认子模拟是通过调用产生的parent_mock?我如何检查parent_mock生成了哪些模拟对象?

另外,我如何区分child_mock1具体源自呼叫parent_mock(a=1)child_mock2源自呼叫parent_mock(b='spam')

我知道可以手动将模拟附加为其他模拟的属性,但是,它需要大量设置,因为您需要确保显式定义父模拟的返回调用,以便它返回指定的子模拟,并且所以它在几次调用之后就无法很好地扩展。

python unit-testing mocking

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

用于测试的内存文件

如何在Go中为单元测试创​​建内存中的文件?

在Python中,我测试从文件读取或使用io.BytesIO或写入文件io.StringIO.例如,要测试文件解析器,我会

def test_parse_function():
    infile = io.StringIO('''\
line1
line2
line3
''')
    parsed_contents = parse_function(infile)
    expected_contents = ['line1', 'line2', 'line3']  # or whatever is appropriate
    assert parsed_contents == expected_contents
Run Code Online (Sandbox Code Playgroud)

同样对于文件输出,我会有类似以下内容:

def test_write_function():
    outfile = io.StringIO()
    write_function(outfile, ['line1', 'line2', 'line3'])
    outfile.seek(0)
    output = outfile.read()
    expected_output = '''\
line1
line2
line3
'''
    assert output == expected_output
Run Code Online (Sandbox Code Playgroud)

unit-testing go

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

跳转到Vim中当前行的quickfix或位置列表中的错误(使用Syntastic)

我开始使用Vim 的Syntastic插件,它将在当前缓冲区上运行语法检查器,然后指出任何有错误的行.我可以打开错误列表,如使用位置列表:Errors,然后通过点击Enter跳转到给定错误的行,这将跳转到包含缓冲区中错误的行.

我想知道如何做相反的事情.我想从我的缓冲区内的一行标有有语法错误在位置列表中的相应条目,这样我就可以在列表中读取完整的错误消息去了.我怎样才能做到这一点?我知道这:ll [n]将跳转到n列表中的第th个错误,但通常我不确切地知道哪个错误号对应于缓冲区中的给定行.但是,我找不到接受行号而不是错误号的命令.

vim vim-plugin syntastic

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

在SQL中使用IN与元组集(SQLite3)

我在SQLite3数据库中具有下表:

CREATE TABLE overlap_results (
neighbors_of_annotation varchar(20),
other_annotation varchar(20),
set1_size INTEGER,
set2_size INTEGER,
jaccard REAL,
p_value REAL,
bh_corrected_p_value REAL,
PRIMARY KEY (neighbors_of_annotation, other_annotation)
);
Run Code Online (Sandbox Code Playgroud)

我想执行以下查询:

SELECT * FROM overlap_results WHERE 
(neighbors_of_annotation, other_annotation)
IN (('16070', '8150'), ('16070', '44697'));
Run Code Online (Sandbox Code Playgroud)

也就是说,我有几个带注释ID的元组,我想获取每个这些元组的记录。sqlite3提示给我以下错误:

SQL error: near ",": syntax error
Run Code Online (Sandbox Code Playgroud)

如何正确将其表示为SQL语句?


编辑我意识到我并没有很好地解释我真正的追求。让我再尝试一下。

如果某人给我neighbors_of_annotation他们感兴趣的任意术语列表,我可以编写如下的SQL语句:

SELECT * FROM overlap_results WHERE 
neighbors_of_annotation
IN (TERM_1, TERM_2, ..., TERM_N);
Run Code Online (Sandbox Code Playgroud)

但现在假设这个人想给我双方面的,如果形式(TERM_1,1, TERM_1,2)(TERM_2,1, TERM_2,2),... (TERM_N,1, TERM_N,2),这里TERM_i,1neighbors_of_annotationTERM_i,2other_annotation。SQL语言是否提供同样优雅的方法来为感兴趣的对(元组)制定查询?

最简单的解决方案似乎是为这些对创建一个新表,然后将该表与要查询的表连接起来,并仅选择第一项和第二项匹配的行。创建大量 …

sql sqlite row-value-expression

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

将等式或公式添加到LaTeX中的图形标题

我在LaTeX中有一个带有标题的图形,我需要添加一个公式(equation*displaymath环境).例如:

\documentclass[12pt]{article}
\begin{document}
\begin{figure}[tbph]
    \begin{center}
        %...
    \end{center}
    \caption{As you can see
            \begin{displaymath}4 \ne 5\end{displaymath}
    }
    \label{fig:somefig}
\end{figure}
\end{document}
Run Code Online (Sandbox Code Playgroud)

这使得pdflatex生气,虽然它会产生PDF.

! Argument of \@caption has an extra }.
<inserted text> 
                \par 
l.9    }
Run Code Online (Sandbox Code Playgroud)

将方程式添加到数字标题的正确方法是什么?

注意:请不要建议只使用$ ... $数学环境; 显示的等式是玩具示例; 我真实的等式更复杂.

另见:

latex mathematical-typesetting

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