此错误的含义是“如果(any(B< 1))stop("B too small")出错".在使用tabplot程序包时 [英] What is the meaning of this error "Error in if (any(B < 1)) stop("B too small")" while using tabplot package

查看:75
本文介绍了此错误的含义是“如果(any(B< 1))stop("B too small")出错".在使用tabplot程序包时的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我找到了用于可视化大型数据库的tabplot程序包.我使用以下代码运行了该代码,但在不同的数据帧上却收到了此错误:

I found the tabplot package for visualizin a large data base. I ran it using the code below but I get this error on different data frames:

"Error in if (any(B < 1)) stop("B too small") : 
  missing value where TRUE/FALSE needed
In addition: Warning message:
In bbatch(n, as.integer(BATCHBYTES/theobytes)) : NAs introduced by coercion"

这里是一个例子:

dat <- read.table(text = " birds    wolfs     snakes
                     3        9         7
                     3        8         4
                     1        2         8
                     1        2         3
                     1        8         3
                     6        1         2
                     6        7         1
                     6        1         5
                     5        9         7
                     3        8         7
                     4        2         7
                     1        2         3
                     7        6         3
                     6        1         1
                     6        3         9
                     6        1         1   ",header = TRUE)
install.packages("tabplot")
package ‘ff’ successfully unpacked and MD5 sums checked
package ‘bit’ successfully unpacked and MD5 sums checked
package ‘fastmatch’ successfully unpacked and MD5 sums checked
package ‘ffbase’ successfully unpacked and MD5 sums checked
package ‘tabplot’ successfully unpacked and MD5 sums checked
library("tabplot", lib.loc="~/R/win-library/3.1")
 tab <- tableplot(dat, plot = FALSE) ## The tabplot  command
Error in if (any(B < 1)) stop("B too small") : 
  missing value where TRUE/FALSE needed
In addition: Warning message:
In bbatch(n, as.integer(BATCHBYTES/theobytes)) : NAs introduced by coercion

任何想法如何克服这个问题?

Any Idea how to overcome this issue?

更新-我使用了另一台计算机,并且运行良好.两台计算机都在Windows 64位系统上运行,但在我认为可以运行的计算机上,该操作系统是Win7 pro,并且在具有以下功能的计算机上操作系统为WIN SERVER 2013的错误

UPDATE - I used another computer and it works fine.Both computers are on Windows 64-bit but on the computer that I got it to work the OS is Win7 pro and on the computer that has the error the OS is WIN SERVER 2013

推荐答案

根据

According to a comment by schuemie, this error has to do with the amount of memory needed by ffdfdlpy, and can be fixed with a per-session run of

options(ffmaxbytes = min(getOption("ffmaxbytes"),.Machine$integer.max * 12))

将允许它工作.

我可以通过sessionInfo()确认它可以正常工作:

I can confirm this works with sessionInfo():

R version 3.2.4 (2016-03-10) Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 7 x64 (build 7601) Service Pack 1

R version 3.2.4 (2016-03-10) Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 7 x64 (build 7601) Service Pack 1

这篇关于此错误的含义是“如果(any(B&lt; 1))stop("B too small")出错".在使用tabplot程序包时的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆