草庐IT

生命科学

全部标签

ruby - 强制 Ruby 不以标准形式/科学记数法/指数记数法输出 float

我遇到了同样的问题here对于python,但对于ruby​​。我需要输出这样一个小数字:0.00001,而不是1e-5。有关我的特定问题的更多信息,我正在使用f.write("Mynumber:"+small_number.to_s+"\n")输出到一个文件对于我的问题,准确性不是什么大问题,所以只做一个if语句来检查是否small_number那么更通用的方法是什么? 最佳答案 f.printf"Mynumber:%.5f\n",small_number您可以将.5(小数点右侧5位数字)替换为您喜欢的任何特定格式大小,例如,%8

ruby - 如何强制 Float 在不使用科学记数法的情况下以完全精确的方式显示,而不是作为字符串显示?

在Ruby中,如何在没有科学记数法的情况下强制显示所有重要位置/完全精确的float?目前我将BigDecimal转换为Float,BigDecimal(0.000000001453).to_f,但这会产生1.453e-09的结果float。如果我执行类似"%14.12f"%BigDecimal("0.000000001453").to_f的操作,我会得到一个字符串。然而,在这种情况下,字符串作为输出是NotAcceptable,因为我需要它作为没有科学记数法的实际数字float。---编辑---好吧,让我在这里提供一些背景信息,这可能需要更改我原来的问题。我正在尝试使用Highsto

ruby - 从 float 中删除科学记数法

我目前正在将两个float相乘:0.0004*0.0000000000012=4.8e-16如何获得正常格式的结果,即没有科学记数法,例如0.0000000000324,然后将其四舍五入为5个数字。 最佳答案 您可以使用stringformatting.a=0.0004*0.0000000000012#=>4.8e-16'%.5f'%a#=>"0.00000"pi=Math::PI#=>3.141592653589793'%.5f'%pi#=>"3.14159" 关于ruby-从floa

ruby - 使用 Ruby 进行科学编程

我使用python或octave进行数学计算,因为手头有非常好的函数和库。但最近我对ruby​​产生了兴趣,我想知道Ruby中是否有与Python中的numpy、scipy等价的用于科学编程的东西。具体来说,我正在寻找可以像在matplotlib中那样绘制绘图并像在numpy和scipy中那样快速进行数学代数计算的东西。 最佳答案 SciRuby正在研究这个。NMatrix和Statsample分别是线性代数和统计最有用的SciRubygem,尽管您可能还会发现这些有用:distribution,minimization,和inte

ruby - 如何将科学计数法字符串转换为十进制计数法?

我想查找并将csv文件中的所有科学记数法字符串转换为十进制记数法,例如:1.0e-05to0.00001我如何在ruby​​中做到这一点? 最佳答案 只需使用字符串转换。必要的强制float将自动完成:"%f"%"1.0e-05"=>"0.000010"#Which,behindthescenesisthesameas:"%f"%"1.0e-05".to_f=>"0.000010"根据需要进行调整以获得或多或少的准确性。例如:"%.5f"%"1.0e-05"=>"0.00001"如果您想要真正的花哨并在末尾砍掉不必要的零,这是一种方

Ruby:以科学记数法控制打印

如果我在Ruby中有一个非常长的float,例如:x=123456789012345.to_f当它显示时,比如说,通过to_s,它以科学记数法出现:"1.23456789012345e+14"有什么方法可以抑制科学记数法的格式化,或者在硬币的另一面,强制它用于极短的float? 最佳答案 您可以使用%operator做各种各样的事情。例如:x=123456789012345.to_f"%f"%x#=>"123456789012345.000000"y=1.23"%E"%y#=>"1.230000E+000"各种选项与sprintf函

ruby-on-rails - Rails 应用程序的生命周期

我正在尝试了解Rails应用程序的生命周期。application_controller.rb什么时候运行?是每次更改时只执行一次,还是每次请求时都执行一次?我想了解以下文件:config/environments/*.rb(开发、生产或测试,取决于当前模式)boot.rb环境.rb路线.rb我问这个的原因之一是,我想知道放在哪里比较好初始化代码自定义配置数据编辑:@Gdeglin的回答很好,但我实际上很想知道这些文件中的每一个何时运行。 最佳答案 应用程序Controller.rbApplicationController是所有C

ruby - 在 Sinatra(Ruby) 中,我应该如何创建在应用程序生命周期中只赋值一次的全局变量?

在Sinatra中,我无法创建在应用程序生命周期中仅分配一次值的全局变量。我错过了什么吗?我的简化代码如下所示:require'rubygems'ifRUBY_VERSION这导致nil2在终端和,2在浏览器中。如果我尝试将@a=1放入initialize方法中,我会在WebApp.run!中遇到错误线。我觉得我错过了一些东西,因为如果我不能有全局变量,那么我如何在应用程序实例化期间加载大数据?beforedo似乎每次有来自客户端的请求时都会被调用。 最佳答案 classWebApp请注意,如果您使用Shotgun或其他在每次请求时

Ruby 与计算机科学相关的 yield 特性

我最近发现了Ruby的blocks和yielding特性,我想知道:这在计算机科学理论方面适合什么地方?它是一种函数式编程技术,还是更具体的东西? 最佳答案 Ruby的yield不像C#和Python中的迭代器。一旦您理解了block在Ruby中的工作原理,yield本身实际上是一个非常简单的概念。是的,block是一种函数式编程特性,尽管Ruby并不是一种合适的函数式语言。事实上,Ruby使用方法lambda来创建block对象,这是从Lisp的语法中借来的用于创建匿名函数的——这就是block。从计算机科学的角度来看,Ruby的

javascript - 使用 ajax 调用 react 组件 - 生命周期

所以我有一个使用React和Ajax调用的有趣案例。在上下文中,我有一个带有3个选项卡的Accordion。初始化Accordionreact组件后,我首先打开第一个选项卡,其余选项卡关闭。每个选项卡的主体中都有所谓的DictionaryCall组件,如下所示:returnclassDictionaryCallextendsReact.Component{constructor(props){super();this.state={word:'',data:[],error:false,nodata:false,initialLoaded:props.load}}componentDi