我尝试使用describe
包中的psych
函数。但是,我收到以下错误:
describe(ToothGrowth)中的错误: description必须是至少长度为1的字符串
我确保重新安装软件包,加载它,并从数据集库中附加示例data(ToothGrowth)
但仍然出现此错误。
R version 3.1.2 (2014-10-31)
Platform: x86_64-w64-mingw32/x64 (64-bit)
locale:
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C
[5] LC_TIME=English_United States.1252
attached base packages:
[1] tools tcltk stats4 splines parallel grid compiler
[8] stats graphics grDevices utils datasets methods base
答案 0 :(得分:5)
问题在于testthat::describe
会覆盖psych::describe
:
library(psych)
data(ToothGrowth)
describe(ToothGrowth)
# Warning in FUN(newX[, i], ...) :
# no non-missing arguments to min; returning Inf
# Warning in FUN(newX[, i], ...) :
# no non-missing arguments to max; returning -Inf
# vars n mean sd median trimmed mad min max range skew kurtosis se
# len 1 60 18.81 7.65 19.25 18.95 9.04 4.2 33.9 29.7 -0.14 -1.04 0.99
# supp* 2 60 NaN NA NA NaN NA Inf -Inf -Inf NA NA NA
# dose 3 60 1.17 0.63 1.00 1.15 0.74 0.5 2.0 1.5 0.37 -1.55 0.08
library(testthat)
# Attaching package: ‘testthat’
# The following object is masked from ‘package:psych’:
# describe <-- overrides describe function of psych package
# The following object is masked from ‘package:sos’:
# matches
describe(ToothGrowth)
# Error in describe(ToothGrowth) :
# description must be a string of at least length 1
一种解决方案是在testthat
之前加载psych
。另一个是说要使用哪个describe
函数:
psych::describe(ToothGrowth)