小编sah*_*uno的帖子

为什么我不能使用或改变 R data.table 中创建的新列?

我想使用/改变obs我在 data.table 中创建的列,但返回错误

Error in eval(jsub, SDenv, parent.frame()) : object 'obs' not found

请参阅示例数据的实现。

library(data.table)

set.seed(0)

dt <- data.table(
  index = sample(0:100, 10, replace=FALSE), 
  value = 1:100)

dt[, `:=`(obs = seq_along(index)-1, window = floor(obs/10))] #create an index of every observation and bin them
Run Code Online (Sandbox Code Playgroud)

r data.table

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

data.table::fread 对于较大的文件失败(尚不支持长向量)

读取大文件 ~335GB 时 fread() 失败并出现此错误。感谢任何有关如何解决此问题的建议。

opt$input_file <- "sample-009_T/per_read_modified_base_calls.txt"
Error in data.table::fread(opt$input_file, nThread = 16) : 
  long vectors not supported yet: ../../src/include/Rinlinedfuns.h:537
Execution halted
Run Code Online (Sandbox Code Playgroud)

文件大小和片段

(base) bash-4.2$ ls -thl per_read_modified_base_calls.txt
-rw-r--r-- 1 lih7 user 335G May 31 15:24 per_read_modified_base_calls.txt

(base) bash-4.2$ head per_read_modified_base_calls.txt 
read_id chrm    strand  pos     mod_log_prob    can_log_prob    mod_base
d1c2a9e7-8655-4393-8ab1-c1fa47b0dc5c    chr12   +       94372964        -8.814943313598633      -8.695793370588385      h
d1c2a9e7-8655-4393-8ab1-c1fa47b0dc5c    chr12   +       94372964        -0.00031583529198542237 -8.695793370588385      m
2109b127-c835-47f3-b215-c238438829b6    chr10   -       118929450       -3.0660934448242188     -5.948376270726361      h
2109b127-c835-47f3-b215-c238438829b6    chr10   -       118929450       -0.05046514421701431    -5.948376270726361      m
2109b127-c835-47f3-b215-c238438829b6    chr10   - …
Run Code Online (Sandbox Code Playgroud)

r fread data.table

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

使用 tidyr 或 dplyr 方法进行 Fisher 精确

我有包含两组的数据数据框:肿瘤组和正常组。对于每个站点/行,我想计算费舍尔精确值以用于Methyl UnMethy之间的使用Tumor and Normal

我正在寻找如何使用 dplyr 方法转换数据以计算每个站点的渔民精确度。

methyl_dat <- data.frame(loci = c("site1", "site2", "site3", "site4"), 
           Methy.tumor = c(50, 5, 60, 12), 
           UnMethy.tumor = c(60, 0, 65, 5), 
           Methy.Normal = c(13, 5, 22, 3),
           UnMethy.Normal = c(86, 0, 35, 3) )
Run Code Online (Sandbox Code Playgroud)

这是 Fischer 对站点 1 的精确策略

              Normal
Tumor          Methyl  UnMethy
  Methy         50      13
  UnMethy       60      86
Run Code Online (Sandbox Code Playgroud)

r tidy dplyr rstatix

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

标签 统计

r ×3

data.table ×2

dplyr ×1

fread ×1

rstatix ×1

tidy ×1