在日志空间中乘以两个数字意味着添加它们:
log_multiply(x, y) = log( exp(x) * exp(y) )
= x + y
Run Code Online (Sandbox Code Playgroud)
在日志空间中添加两个数字意味着您执行特殊的日志添加操作:
log_add(x, y) = log( exp(x) + exp(y) )
Run Code Online (Sandbox Code Playgroud)
这是在以下代码中实现的,其方式不需要我们采用两个指数(并且失去运行时速度和精度):
double log_add(double x, double y) {
if(x == neginf)
return y;
if(y == neginf)
return x;
return max(x, y) + log1p(exp( -fabs(x - y) ));
}
Run Code Online (Sandbox Code Playgroud)
(这是另一个.)
但问题是:
还有一个技巧可以用于减法吗?
log_subtract(x, y) = log( exp(x) - exp(y) )
Run Code Online (Sandbox Code Playgroud)
不必拿指数而失去精确度?
double log_subtract(double x, double y) {
// ?
}
Run Code Online (Sandbox Code Playgroud) 我习惯使用vim来修改文件的行结尾:
$ file file
file: ASCII text, with CRLF line terminators
$ vim file
:set ff=mac
:wq
$ file file
file: ASCII text, with CR line terminators
Run Code Online (Sandbox Code Playgroud)
是否可以使用类似的过程来更改文件的unicode编码?我正在尝试以下方法,但这不起作用:
$ file file.xml
file.xml: Unicode text, UTF-16, little-endian
$ vim file
:set encoding=utf-8
:wq
$ file file.xml
file.xml: Unicode text, UTF-16, little-endian
Run Code Online (Sandbox Code Playgroud)
我看到有人说他可以"设置fileencoding = utf-8,然后更新并写入文件,它可以工作",但我似乎错过了一些东西,否则他很困惑.我不知道"然后更新"是什么意思.
我们一直在命令行使用grep,cut,sort,uniq和join来进行数据分析.他们工作得很好,虽然有缺点.例如,您必须为每个工具提供列号.我们经常有宽文件(很多列)和一个列标题,用于给出列名.实际上,我们的文件看起来很像SQL表.我确定有一个驱动程序(ODBC?)将操作分隔的文本文件,以及一些将使用该驱动程序的查询引擎,所以我们可以在我们的文本文件上使用SQL查询.由于进行分析通常是临时的,因此查询新文件(仅使用我在此目录中指定的文件)而不是在某些配置中声明特定表必须是最小化设置.
实际上,最简单的是什么?也就是说,最容易设置和用于应用文本文件的SQL引擎和驱动程序?
我有一个用C/C++编写的多线程Linux应用程序.我为我的线程选择了名字.为了帮助调试,我希望这些名称在GDB,"top"等中可见.这是可能的,如果是这样,如何?
(有很多理由知道线程名称.现在我想知道哪个线程占用了50%的CPU(由'top'报告).而且在调试时我经常需要切换到不同的线程 - 目前我必须做" thread apply all bt"然后查看回溯输出页面以找到正确的线程).
该视窗解决方案就在这里 ; 什么是Linux?
Python与EXCEL通信...我需要找到一种方法,以便我可以找到/搜索给定列数据的行.现在,我逐个扫描整行...这将是有用的,如果有一些函数,如FIND/SEARCH/REPLACE ....我没有在pyExcelerator或xlrd模块中看到这些功能..我不想使用win32com模块!它使我的工具窗口基于!
通过Python查找/搜索Excel行....任何想法,任何人?
我有一个Windows窗体(C#.NET 3.5),上面有许多按钮和其他控件,都分配给一个跨越整个窗体的最顶层面板.例如,层次结构为:Form - > Panel - >其他控件.
一旦我将BackgroundImage分配给Panel,控件就会非常缓慢地绘制.如果我使用Form的BackgroundImage属性并将Panel的BackgroundColor设置为"transparent",我会有同样的效果.看起来好像首先绘制了具有背景的窗口,然后在绘制下一个控件之前稍微延迟逐个添加每个控件.换句话说,您实际上可以按照每个控件绘制到窗体的顺序.一旦所有控件都被绘制,一旦此效果不再发生,但表单的响应速度仍然很慢.
在Visual Studio的设计器中,我得到了相同的效果,尤其是在移动控件时.有时表单的绘图完全停止一两秒,这使得在设计器和生成的应用程序中使用BackgroundImage是一个完全的拖拽.
当然,我尝试使用DoubleBuffered = true,我也使用反射在所有控件上设置它,没有任何效果.
此外,这里是加载代码的表单,因为它有点不寻常.它将所有控件从另一个表单复制到当前表单上.这样做是为了能够在共享公共表单和公共代码的基础上使用设计器分别编辑每个屏幕的视觉外观.我预感它可能是减速的原因,但它仍然无法解释为什么减速器已经在设计师中引人注目.
private void LoadControls(Form form)
{
this.SuspendLayout();
this.DoubleBuffered = true;
EnableDoubleBuffering(this.Controls);
this.BackgroundImage = form.BackgroundImage;
this.BackColor = form.BackColor;
this.Controls.Clear();
foreach (Control c in form.Controls)
{
this.Controls.Add(c);
}
this.ResumeLayout();
}
Run Code Online (Sandbox Code Playgroud)
如您所见,SuspendLayout()并ResumeLayout()用于避免不必要的重绘.
尽管如此,一旦使用BackgroundImage,表单就像"地狱一样慢".我甚至尝试将其转换为PNG,JPG和BMP,看看是否有任何区别.此外,图像尺寸为1024x768,但较小的图像具有相同的减速效果(尽管略小).
我该怎么办?
我可能有一个相当简单的问题.但是,我刚刚开始使用python,它只会让我发疯.我按照书的说明,想打开一个简单的文本文件.我正在使用的代码:
import sys
try:
d = open("p0901aus.txt" , "W")
except:
print("Unsucessfull")
sys.exit(0)
Run Code Online (Sandbox Code Playgroud)
我要么得到消息,要么打开文件或弹出显示说:
(unicode eror)'unicodeescape'编解码器无法解码2-4位的字节:截断\ UXXXXXXXX转义
我不知道问题是什么.我试图用不同的代码保存文档,尝试不同的路径......总是同样的问题
有人知道任何帮助吗?
非常感谢你提前,
georg ps:我正在使用windows vista
我需要添加group一个名为的列调用的表code
如何向列添加检查约束,以便它只允许以下字母字符(D,M,O,P或T)后跟2个数字字符.
关于拥有USB闪存设备,我最喜欢的一件事就是随身携带一堆有用的工具.我想写一些工具,让它们在这种环境中运行良好.我知道C#最好,而且我很有效率,所以我可以立即获得一个Windows窗体应用程序.
但是在制作便携式应用程序时应该考虑哪些因素?我能想到的一些,但不知道答案:
1)语言可移植性 - 好的,我知道我使用它的任何机器都需要安装.NET运行时.但由于我经常只使用几台Windows机器,这应该不是问题.我可以使用另一种语言对其进行编码,但后来我失去了生产力,特别是在简单的表单设计器方面.从闪存驱动器运行.NET应用程序还有其他问题吗?
2)读/写周期 - 在C#中,如何确保我的应用程序没有不必要地写入驱动器?我是否始终控制写入,或者是否需要考虑"隐藏写入"?
3)开放式问题:我应该注意哪些与便携式应用程序有关的其他问题,或者对具有良好IDE的其他语言的建议是否会使我获得类似的生产力水平但更好的可移植性?
我想从.bat文件中获取文件的父目录.所以,给定一个变量"C:\MyDir\MyFile.txt",我想得到"C:\MyDir".换句话说,相当于dirname()典型UNIX环境中的功能.这可能吗?
c# ×2
command-line ×2
python ×2
unicode ×2
.net ×1
batch-file ×1
c ×1
c++ ×1
excel ×1
function ×1
linux ×1
math ×1
numbers ×1
performance ×1
portability ×1
search ×1
sql ×1
sql-server ×1
text ×1
usb ×1
vim ×1
windows ×1
winforms ×1
xlrd ×1