小编Bor*_*cky的帖子

大写除了数组中选定单词之外的每个单词

现在我有

value = "United states of america"
words_to_ignore = ["the","of"]
new_string = value.split(' ').map {|w| w.capitalize }.join(' ')
Run Code Online (Sandbox Code Playgroud)

我想在这里做的是除了这个词of,我希望其余的大写.所以输出就是United States of America.现在我不确定,怎么做到这一点.

ruby arrays nlp

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

Emacs 24 中的 Shift 选择不突出显示文本

我一定是傻了,但我刚刚切换到 Emacs 24,并且在移动点时按住 Shift 不再突出显示文本。鼠标选择和以前一样工作。我错过了什么?我不小心关掉了吗?或者是否认为 Shift 选择不符合人体工程学,因此我们手头有其他一些更好的基于键盘的选择?

emacs

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

如何找到 3 个数组的交集,同时忽略空数组?

我必须找到 3 个整数数组(例如 a、b、c)与条件的交集元素;如果数组中的任何一个为 null ( []),则忽略该数组并查找剩余数组的交集,如果三个数组都为 null,则返回 []。提前致谢。

ps:红宝石1.9.3

ruby ruby-on-rails

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

Ruby中的#tap方法是危险的吗?

tap方法如何以并发方式工作?如果我这样做,我是否必须担心:

some_object.tap { |o|
  # time-consuming operation 1
}.tap { |o|
  # time-consuming operation 2
}
Run Code Online (Sandbox Code Playgroud)

那么,在现在还是将来,Ruby会尝试同时进行这些操作?你知道,#tap听起来很危险.

是否保证#tap块按顺序执行(当然,除非在块内部执行某些异常操作)?

ruby piping

3
推荐指数
2
解决办法
333
查看次数

为什么Ruby`**`运算符的优先级高于一元`-`?

这导致了如下情况:

-1 ** 0.5 #=> -1
Run Code Online (Sandbox Code Playgroud)

只有括号补救它:

(-1) ** 0.5 #=> 6.123031769111886e-17+1.0i
Run Code Online (Sandbox Code Playgroud)

这比预期的要差1.i,但基本上可以接受.在我向Ruby漏洞抱怨之前,我想知道是否有某种原因可以这样做?

ruby operator-precedence operator-keyword

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

如何从Ruby中的指数分布中提取?

在Ruby中,我需要使用均值来绘制指数分布m.请告诉我如何快速有效地完成它.例如.让我们:

m = 4.2

def exponential_distribution
  rand( m * 2 )
end
Run Code Online (Sandbox Code Playgroud)

但是,当然,这段代码是错误的,而且,它只返回整数结果.我今天已经累了,请提示我一个好的解决方案.

ruby random statistics random-sample

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

H2O深度学习与阶级失衡

我正在使用H2O deeplearning前馈深度神经网络进行二进制分类.我的课程非常不平衡,我想使用像这样的参数

balance_classes,class_sampling_factors

任何机构都可以给我一个可重复的例子,说明如何专门初始化这些参数来处理类不平衡问题.

r machine-learning deep-learning h2o

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

R:使用“ weights”参数和使用手动重新加权的数据时,lm()结果有所不同

为了用错误术语纠正异方差,我在R中运行以下加权最小二乘回归:

#Call:
#lm(formula = a ~ q + q2 + b + c, data = mydata, weights = weighting)

#Weighted Residuals:
#     Min       1Q   Median       3Q      Max 
#-1.83779 -0.33226  0.02011  0.25135  1.48516 

#Coefficients:
#             Estimate Std. Error t value Pr(>|t|)    
#(Intercept) -3.939440   0.609991  -6.458 1.62e-09 ***
#q            0.175019   0.070101   2.497 0.013696 *  
#q2           0.048790   0.005613   8.693 8.49e-15 ***
#b            0.473891   0.134918   3.512 0.000598 ***
#c            0.119551   0.125430   0.953 0.342167    
#---
#Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ …
Run Code Online (Sandbox Code Playgroud)

regression r linear-regression lm

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

如何重塑Ruby数组

有阵列

a = [1, 2, 3, 4, 5, 6]
Run Code Online (Sandbox Code Playgroud)

我想重新塑造它

a = [[1, 2], [3, 4], [5, 6]]
Run Code Online (Sandbox Code Playgroud)

我的印象是有一种特定的方法.我刚刚通过Array类引用,但未能找到它.有人记得吗?

ruby arrays

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

如何基于相同的哈希键值合并两个哈希数组?

所以我有两个哈希数组:

a = [{"b"=>123,"c"=>456}, {"b"=>456,"c"=>555}]
b = [{"c"=>456,"d"=>789},  {"b"=>222,"c"=>444}]
Run Code Online (Sandbox Code Playgroud)

如何将它们连接起来,条件是该键的值c是两个等价ab?意思是我希望能够与条件相结合a['c'] == b['c']

这是我想得到的结果:

final_array = [{"b"=>123,"c"=>456,"d"=>789}, {"b"=>456,"c"=>555}, {"b"=>222,"c"=>444}]
Run Code Online (Sandbox Code Playgroud)

ruby

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

如何在 Linux 中获取给定进程的 TCP 套接字的文件描述符?

我试图找到给定进程的所有TCP 套接字的文件描述符,即。给定它的 pid,这样我就可以在另一个进程中获得套接字选项而无需修改原始进程。

例如,如果我知道文件描述符是fd,那么我希望调用getsockopt(fd, ...)以在另一个进程中检索选项。我想知道这可行吗?如果是这样,如何fd在原始过程之外获得我需要的?

我试图在创建套接字时打印出返回值,即。s = socket(...); printf("%d\n", s);,保持原始进程运行并在getsockopt(s, ...)其他地方调用但它不起作用 - 似乎这样的返回值是依赖于进程的。

我也找到了 unix 域套接字的解决方案,但我不想修改原始进程的代码。

至于\proc\<PID>\fd直接阅读还是利用阅读lsof,我想说我不知道​​如何从他们那里找到我需要的东西。我的直觉是它们可能是潜在的解决方案。

当然,也欢迎任何其他想法。说实话,我对Linux中的文件描述符机制不是很熟悉。

c sockets linux tcp file-descriptor

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

切换Git分支后更改的文件会怎样?

尽管使用Git已有相当一段时间,但我仍然无法理解其分支机制。特别是,请考虑一个新项目foo,其中包含bar.txt由以下简单命令初始化的单个文件:

$ mkdir foo
$ cd foo
$ git init
$ touch bar.txt
$ git add .
$ git commit -m 'Initial commit'
Run Code Online (Sandbox Code Playgroud)

现在,当我创建一个分支时foobargit branch表明我仍然在master

$ git branch foobar
$ git branch
  foobar
* master
Run Code Online (Sandbox Code Playgroud)

但是当我更改文件时bar.txt

$ echo quux >> quux.txt
$ git status
modified: quux.txt
Run Code Online (Sandbox Code Playgroud)

然后,当我签出另一个分支时,我可以看到文件bar.txt也在那里被修改了:

$ git checkout foobar
$ git status
modified: quux.txt
Run Code Online (Sandbox Code Playgroud)

我已经知道,此行为使我可以选择要将更改提交到哪个分支,但是我觉得很烦。我怀疑我无法理解Git分支背后的基本思想。有没有办法告诉git,当我对进行更改时master,我不希望它们在我选择签出的任何其他分支中可见?

git sh

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