小编J. *_*ini的帖子

为什么不使用 as.integer 来检查数字是否为整数?

is.integer众所周知,R不检查输入是否为整数。相反,它检查整数类型。它的文档表明,如果我们想检查某个东西是否是整数,我们应该使用:

is.wholenumber <- function(x, tol = .Machine$double.eps^0.5)  abs(x - round(x)) < tol
Run Code Online (Sandbox Code Playgroud)

但不会

is.int<-function(numb) is.numeric(numb)&&as.integer(numb)==numb
Run Code Online (Sandbox Code Playgroud)

是一种更简洁的方法并且需要更少的参数?is.wholenumberover有is.int什么好处?

integer r

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

为什么 as_tibble(mtcars,rownames = NA) 不显示行名称?文档说应该

mtcars显然有行名称:

\n
> head(mtcars)\n                   mpg cyl disp  hp drat    wt  qsec vs am gear carb\nMazda RX4         21.0   6  160 110 3.90 2.620 16.46  0  1    4    4\nMazda RX4 Wag     21.0   6  160 110 3.90 2.875 17.02  0  1    4    4\nDatsun 710        22.8   4  108  93 3.85 2.320 18.61  1  1    4    1\nHornet 4 Drive    21.4   6  258 110 3.08 3.215 19.44  1  0    3    1\nHornet Sportabout 18.7   8  360 175 3.15 3.440 17.02  0  0    3    2\nValiant           18.1   6 …
Run Code Online (Sandbox Code Playgroud)

r names tibble r-rownames

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

为什么使用单字符索引进行索引适用于数据框而不适用于矩阵?

在数据帧中,[可以使用单个字符执行索引。例如mtcars["mpg"]

另一方面,在矩阵上尝试相同的结果,NA例如

m = cbind(A = 1:5, B = 1:5)
m["A"]
# NA
Run Code Online (Sandbox Code Playgroud)

...暗示这在某种程度上是一种无效的矩阵子集方法。

这是正常的 R 行为吗?如果有,记录在哪里?

r matrix subset

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

我在 SICP 练习 3.16 中看到的每个解决方案似乎都是通过创建超过三对来作弊的。我的理解错在哪里?

SICP 练习 3.16为读者提供了一个计算列表结构中的对数的完整过程:

(define (count-pairs x)
  (if (not (pair? x))
      0
      (+ (count-pairs (car x))
         (count-pairs (cdr x))
         1)))
Run Code Online (Sandbox Code Playgroud)

然后,它要求读者创建由三对组成的列表结构,使该过程返回:

  1. 3
  2. 4
  3. 7
  4. 永远不要回来。

任务#1 和#4 很简单;只需制作一个包含三个元素的普通列表并制作一个循环列表即可。然而,对于任务 #2 和 #4,我见过的每个解决方案似乎都通过创建超过三对来作弊。例如,Scheme Wiki给出了这些:

 (define x '(foo)) 
 (define y (cons x x)) 
 (define str2 (list y)) 
 (count-pairs str2) ; 4 

 (define x '(foo)) 
 (define y (cons x x)) 
 (define str3 (cons y y)) 
 (count-pairs str3) ; 7

 (define second (cons 'a 'b)) 
 (define third (cons 'a 'b)) 
 (define …
Run Code Online (Sandbox Code Playgroud)

scheme list sicp cons

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

100 是 SELECT * FROM [Multi-Statement-Table-Valued-Function] 查询的基数估计的幻数吗?

我正在 SQL Server 2019 上运行。每当我编写以下形式的查询时

SELECT * 
FROM [Multi-Statement-Table-Valued-Function]
Run Code Online (Sandbox Code Playgroud)

执行计划显示它期望从此进程中获取 100 行。这是一致且有记录的模式吗?或者这只是我的服务器的一个怪癖?

我有一组关于 SQL Server 2014 基数估计的注释,我相信估计方法自 2014 年以来没有改变,但他们没有提到这个神奇的数字。

t-sql sql-server user-defined-functions sql-server-2019 cardinality-estimation

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

为什么时间需要是一个宏?

Clojure源代码给出了以下定义time

(defmacro time
  "Evaluates expr and prints the time it took.  Returns the value of
 expr."
  {:added "1.0"}
  [expr]
  `(let [start# (. System (nanoTime))
         ret# ~expr]
     (prn (str "Elapsed time: " (/ (double (- (. System (nanoTime)) start#)) 1000000.0) " msecs"))
     ret#))
Run Code Online (Sandbox Code Playgroud)

为什么这需要一个宏?函数无法完成怎么办?

macros time clojure

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

哪些编程语言拥有最公开的库?

我原以为会有一个很容易找到的编程语言列表,按它们拥有的库数量排序。我一直找不到这样的东西。有没有办法找到或制作这样的列表?具体来说,前 5 名是什么?我知道这需要定义什么是图书馆,什么不是图书馆,但我很震惊地看到我什至找不到这样一个列表的尝试。

language-comparisons package

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