我可以做数学
perl -e 'print 5253413/39151' -l
Run Code Online (Sandbox Code Playgroud)
但是我不太了解如何利用Perl使用我自己的预定义bash变量进行数学运算的能力.我试过了
var1=$(some wc command that yields a number); var1=$(some wc that yields another number)
perl -e 'print var1/var2' -l
Run Code Online (Sandbox Code Playgroud)
但它不起作用
老实说,我只是不理解"非零"状态的术语来真正解释在帮助页面上发生了什么或者意味着什么(甚至没有定义).有哪些使用python来调用其中这些进程的脚本的例子
subprocess.call
subprocess.check_output
subprocess.popen
真的不一样吗?你何时会使用其中任何一种,以及这些方法的消歧细节是什么?如果我想要简单的OS调用,我应该使用os.system吗?
我需要ctrl + y来重做.我已经尝试将"redo"命令从ctrl + shift + z替换为ctrl + y,但无论什么,当我按下ctrl + y时它总是会执行"粘贴yank文本".
如果您不相信我,请尝试为自己重新创建此错误
除此之外,yank(ctrl + y)甚至不出现在键盘快捷键列表中.这令人沮丧,总是干扰我的工作.当切割和粘贴已经存在时,没有理由猛拉.我只需要正常的撤销/重做快捷方式行为,就像它在其他所有内容中一样,并且"yank"功能将永久地从我的键盘快捷方式中删除.要么是救星.
R中ANOVA分析遗漏的一件事是它不会自动显示临界值.其他一切都给了.我可以说我的F值比应有的高,但我想知道截止位置的余量.有这个在线计算器根据自由度产生F统计的临界值,但我希望R这样做.http://www.danielsoper.com/statcalc/calculator.aspx?id=4
我该怎么做?
例:
>anova(anovaModel.model1)
Df Sum Sq Mean Sq F value Pr(>F)
data$SIZE 4 0.1193 0.027926 22.056 4.55e-16 ***
Residuals 1372 1.994 0.001352
>F(variance.mod1) #??
>F(4,1372 ) #Something like this?
Run Code Online (Sandbox Code Playgroud) 我刚刚发现将stdout传输到Perl中,我很惊讶你甚至可以这样做:
[user@folder] $ echo print 1/3 | perl
0.33333[user@folder] $
Run Code Online (Sandbox Code Playgroud)
根据我的理解,你将print命令放入Perl,并使用Perl的代码进行浮点计算.请指正.但是,每次我这样做,我都会得到一个没有换行符的答案.我到处搜索,我只是不能将这些术语的关键字足以创建答案.
这是我正在谈论的内容的链接,在海报旁边 Thor: 我如何在bash中使用浮点除法?
他给出了一个惊人的答案,但我无法评论或给用户发消息,所以我决定在这里创建一个新问题.
我仍然试图围绕这是如何工作,变量.
$ three=3
$ echo $three/3 | perl
1[user@folder] $
Run Code Online (Sandbox Code Playgroud)
奖金问题:
它起初就像我试图让bash在算术运算中输出浮点数.我不明白为什么bc不能返回浮动.据说它可以,但它对我不起作用.
理想的情况是:
$ echo 1/3 | bc
0
$
Run Code Online (Sandbox Code Playgroud)
应该返回.333而不是0.我正在委托一个工具bc,并且bc应该能够做浮动.我只是不明白发生了什么.
说我试图删除换行符或carrige返回.我注意到,当我使用音译来删除换行符时tr -d '\n',我得到的结果与我tr -d $"\n"或是相同tr -d $'\n'.有什么不同?
我不确定在sed或grep中是如何应用的,因为它们更复杂.所以,我试图先找出tr,因为这似乎是一个更简单的bash程序.
我有这个字典(dic),其中键是字符串,但字符串实际上只是数字.
我找不到迭代排序字符串的方法(因为排序字典不会按数字排序)
for j in sorted([int(k) for k in dic.iteritems()]):
print dic[str(j)] #converting the integer back into a string for the key
Run Code Online (Sandbox Code Playgroud)
它给了我
KeyError异常
直觉上这应该有用,但我不明白为什么它没有.
这是所需的输出:
"bacillus thurungensis" in "bacillus thurungensis"
TRUE
"bacillus thurungensis" in "Sentence containing bacillus thurungensis."
TRUE
"bacillus thurungensis" in "Subspecies bacillus thurungensis34"
FALSE
"bacillus thurungensis" in "bacillus thurungensis, bacillus genus"
TRUE
"bacillus thurungensis" in "Notbacillus thurungensis, must match word"
FALSE
Run Code Online (Sandbox Code Playgroud)
Python 通常认为任何子字符串匹配都是好的,但我并不是在寻找这一点。我希望某些正则表达式或匹配运算符仅当且仅当它将查询视为主题中的单独单词而不仅仅是子字符串时才产生 true。这怎么能实现呢?
我有一个值如下所示的数据表:
Score ID
1.2 1
2.4 1
1.1 1
1.9 1
2.4 2
3.5 2
2.2 2
1.1 3
1.1 3
1.7 3
3.1 3
2.2 3
Run Code Online (Sandbox Code Playgroud)
我真正需要的是在单独的列中计算每个ID的更改分数,使其看起来像这样:
Score ID Changes
1.2 1
2.4 1 1.2
1.1 1 -1.3
1.9 1 0.8
2.4 2
3.5 2 1.1
2.2 2 -1.3
1.1 3
1.1 3 0
1.7 3 0.6
3.1 3 1.4
2.2 3 -0.9
Run Code Online (Sandbox Code Playgroud)
注意每个"变化"是如何通过取得前一个分数并从当前分数中减去来计算的:例如,在第一个变化中,你得到1.2乘1.2 = 2.4(当前分数) - 1.2(前一个分数)
问题是这些分数只能仅与ID范围内的分数有关.你不能只是迭代并取得分数的差异.我该怎么做?我可以使用什么逻辑来测试在同一ID中包含"更改"?我熟悉R或python(或BASH)来做到这一点.