CPEL测试

综合讨论 2265 0
安详鲂
安详鲂 来自江苏 发表于:2023-04-10 10:06:15

材料在主客体梯度掺杂的情况下,CPEL测试信号几乎没有,有没有什么方法可以改进,从而测试出CPEL?


本帖完毕
回帖
  • 等待你,消灭零评论
科研通是完全免费的文献互助平台,具备全网最快的应助速度,最高的求助完成率。 对每一个文献求助,科研通都将尽心尽力,给求助人一个满意的交代。
实时播报
浩然完成签到 ,获得积分10
刚刚
研友_Z1eDgZ完成签到,获得积分10
2秒前
今后应助leinei采纳,获得10
2秒前
Johnlei完成签到,获得积分10
2秒前
4秒前
薛小白完成签到 ,获得积分10
7秒前
Johnlei发布了新的文献求助80
8秒前
songyu完成签到,获得积分10
9秒前
BUG完成签到,获得积分10
10秒前
15秒前
wjf发布了新的文献求助10
16秒前
kk完成签到 ,获得积分10
18秒前
yi完成签到,获得积分10
18秒前
端庄的凌旋完成签到,获得积分10
19秒前
紧张的钥匙完成签到 ,获得积分10
20秒前
yi发布了新的文献求助10
21秒前
邢yun完成签到 ,获得积分10
21秒前
lulu完成签到 ,获得积分10
23秒前
StaRingQAQ完成签到,获得积分10
24秒前
lucky完成签到 ,获得积分10
29秒前
瞬间de回眸完成签到 ,获得积分10
31秒前
艳艳宝完成签到 ,获得积分10
33秒前
华仔应助hhh采纳,获得10
33秒前
gdgd完成签到,获得积分10
34秒前
杂菜流完成签到,获得积分10
35秒前
laochen完成签到 ,获得积分10
35秒前
36秒前
wzx完成签到 ,获得积分10
36秒前
LWJ要毕业完成签到 ,获得积分10
38秒前
浮尘完成签到 ,获得积分0
40秒前
小茵茵完成签到,获得积分10
42秒前
sduwl完成签到,获得积分10
49秒前
孙明浩完成签到 ,获得积分10
51秒前
54秒前
Jzhaoc580完成签到 ,获得积分10
54秒前
白雪完成签到 ,获得积分10
56秒前
薛乎虚完成签到 ,获得积分10
56秒前
拾壹完成签到,获得积分10
57秒前
ask基本上完成签到 ,获得积分10
1分钟前
机智的嘻嘻完成签到 ,获得积分10
1分钟前
热门帖子
关注 科研通微信公众号,转发送积分 6487213
求助须知:如何正确求助?哪些是违规求助? 8285518
关于积分的说明 17670960
捐赠科研通 5575813
什么是DOI,文献DOI怎么找? 2913521
邀请新用户注册赠送积分活动 1890466
关于科研通互助平台的介绍 1748015
最新评论
现在主页都是20积分的 8小时前
so good 9小时前
昨天20积分的已经完成了。不好找的会加积分重新发 9小时前
这个错误通常发生在 R 语言进行并行计算时(尽管你设置了 `nworker = 1`,但 `iCAMP` 内部的 `icamp.big` 函数依然会调用底层集群或外部包进行特定的零模型随机化计算)。 导致 **`invalid 'size' argument`(无效的大小参数)** 的核心原因通常是:**由于某些 bin(物种组)内包含的物种数量(或样本量)太少,导致在进行随机抽样(如 `sample()` 函数)时,传入的抽样数量变为了 `0`、负数、或者是 `NA`。** 下面是导致该错误的两个最主要原因以及排查修复方法: --- ### 原因 1:某些 Bin 的物种数太少,且没有被正确忽略 看你的日志: > `----------Now binning com and sp without omitting small bins-----------------` 这意味着 `iCAMP` 正在对所有 bin 进行计算,**没有忽略那些极小的 bin**。虽然你设置了 `bin.size.limit = 20`,但在 `iCAMP` 的逻辑中,如果严格分 bin 导致某些“无法归类”或特殊的 bin 里面物种数少于某个抽样临界值,底层代码在计算观测 MPD 或随机化时就会因为 `sample(..., size = x)` 中的 `x < 1` 而崩溃。 #### 💡 解决方法: 尝试调整 `bin.size.limit` 或者增加系统发育树的过滤。你可以把 `bin.size.limit` 稍微调大(例如 24 或 30),或者检查你的群落数据 `comm` 中是否包含大量的低丰度/稀有物种(单件/双件物种),**建议在跑 iCAMP 之前,先过滤掉在极少数样本中**出现**的稀有物种**: ```R # 过滤掉在少于 3 个样本中**出现**的物种(根据你的数据自行调整) comm_filtered 0) >= 3] # 记得同步过滤 tree library(ape) tree_filtered `2: 'memory.limit()' is no longer supported` > `错误于checkForRemoteErrors(val)` 这说明你使用的是 **Windows 系统**,且 R 版本较新(R 4.2.0 之后已经废弃了 `memory.limit()`)。 虽然你显式设置了 `nworker = 1`,但 `iCAMP` 的某些子函数(例如底层调用 `parallel` 或 `snow` 包时)在 Windows 下创建单节点本地集群时,由于内存限制或变量传递失败,导致子节点传回了一个空值(`NULL` 或 `NA`),主节点在拿这个空值去作为 `size` 进行计算时引发了报错。 #### 💡 解决方法: 在运行 `icamp.big` 之前,手动在 R 中关闭所有潜在的并行冲突,并尝试清除内存: ```R # 1. 显式关闭可能残留的并行集群 try(parallel::stopCluster(cl), silent = TRUE) # 2. 深度清理 R 的内存垃圾 gc(full = TRUE) # 3. 重新运行,并将 nworker 设为 0 或 1 尝试 # 有些包的逻辑中,nworker = 0 才会完全不初始化并行环境,彻底走单线程 ``` --- ### 🛠️ 终极排查建议(两步走) 如果上述调整后依然在 `iCAMP` 的固定位置(如 `bin i=2` 之后)报错,说明是**输入数据的问题**。请重点检查你的输入数据: 1. **检查群落与树的匹配**:确保 `colnames(comm)` 和 `tree$tip.label` **完全一致**。虽然日志显示 `The names are re-ranked.`(名字已重新排序),但如果有物种名字在树里有、在群落里没有,或者反过来,容易导致分 bin 出现空集。 ```R # 严格确保二者物种完全对齐 sp.match 14小时前
你只悬赏了10积分啊 15小时前
谢谢!祝您科研顺利!顺心如意! 20小时前
感谢科研通,必须支持一下 20小时前
so good 21小时前