【发布时间】:2012-08-07 21:35:13
【问题描述】:
我在 R 中使用 data.table 包。尝试在数字列上使用 setkey 时,我收到以下错误消息:
setkey(candidate.SNPs.MAF, p)
Error in setkeyv(x, cols, verbose = verbose) :
Column 'p' cannot be coerced to integer without losing fractional data.
我看到最近的 answer 建议我至少需要 v1.8.1 并确认使用最新版本 (1.8.2) 时会出现此问题
help(package="data.table")
Information on package 'data.table'
Description:
Package: data.table
Version: 1.8.2
有什么建议吗?我宁愿不必恢复到 data.frames。
我的数据结构是这样的:
str(can_SNPs_context)
Classes 'data.table' and 'data.frame': 1031 obs. of 23 variables:
$ Trait : chr "GH2_SLA" "GH2_SLA" "GH2_SLA" "GH2_SLA" ...
$ Locus : chr "1" "1" "1" "1" ...
$ Marker : int 1825530 1844004 2251065 2444826 2832616 3557976 4299 650 4606939 4610965 6057450 ...
$ p : num 8.68e-08 7.21e-08 1.11e-07 1.20e-08 8.17e-08 ...
p 列是我试图设置为键的列 - 非常小的值会导致问题吗?
R 版本 2.15.1 Linux x86_64
谢谢!
【问题讨论】:
-
我无法在我的机器上复制此错误。你能放置一个复制问题的数据子集吗?
标签: r data.table