petrikemppainen / LDna

LDna: an R package to perform linkage disequilibrium network analysis
31 stars 2 forks source link

error: evaluation nested too deeply: infinite recursion / options(expressions=)? #4

Open brevans opened 9 years ago

brevans commented 9 years ago

I have a set of ~18,500 SNPs that I have generated r2 values for, and was excited to try this package out. I'm having issues getting LDnaRaw() to work. I can run the toy example for the documentation with no trouble.

After having loaded my matrix in and dimnaming it, I pass it to LDnaRaw() thusly:

ldna <- LDnaRaw(c_r2, mc.cores=8)

I get this error: error: evaluation nested too deeply: infinite recursion / options(expressions=)?

traceback() yields the following with repeated lines trimmed out:

1001: which(phy$edge[, 1] == des2del)
1000: foo(ancestor, phy$edge[k, 2])
999: foo(ancestor, phy$edge[k, 2])
998: foo(ancestor, phy$edge[k, 2])
997: foo(ancestor, phy$edge[k, 2])
...
5: foo(ancestor, phy$edge[k, 2])
4: foo(ancestor, phy$edge[k, 2])
3: foo(anc[i], node2del[i])
2: di2multi(tree)
1: LDnaRaw(c_r2, mc.cores = 8)
petrikemppainen commented 9 years ago

I would recommend you to subsample say 3000 loci, or even less to try out first. If you still get the same error pass that data set to me and I can have a look. Often you get a good idea what's happening from a relatively small data set anyway and it's faster. In particular plotting very large networks is not something you want to be doing often...

On 20 February 2015 at 16:18, Ben Evans notifications@github.com wrote:

I have a set of ~18,500 SNPs that I have generated r2 values for, and was excited to try this package out. I'm having issues getting LDnaRaw() to work. I can run the toy example for the documentation with no trouble.

After having loaded my matrix in and dimnaming it, I pass it to LDnaRaw() thusly:

ldna <- LDnaRaw(c_r2, mc.cores=8)

I get this error: error: evaluation nested too deeply: infinite recursion / options(expressions=)?

traceback() yields the following with repeated lines trimmed out:

1001: which(phy$edge[, 1] == des2del) 1000: foo(ancestor, phy$edge[k, 2]) 999: foo(ancestor, phy$edge[k, 2]) 998: foo(ancestor, phy$edge[k, 2]) 997: foo(ancestor, phy$edge[k, 2]) ... 5: foo(ancestor, phy$edge[k, 2]) 4: foo(ancestor, phy$edge[k, 2]) 3: foo(anc[i], node2del[i]) 2: di2multi(tree) 1: LDnaRaw(c_r2, mc.cores = 8)

— Reply to this email directly or view it on GitHub https://github.com/petrikemppainen/LDna/issues/4.

sethnr commented 9 years ago

had the same issue. Seems to be sidestepped by increasing recursions to ~10k.

brevans commented 9 years ago

Ahhh, didn't know R had an arbitrary expression stack limit. Will try setting:

options(expressions=10000)

Then report back. Thanks!

petrikemppainen commented 6 years ago

On reason could also be that your MAF is too low. This allows single (outlier) individuals to cause strong clustering, which causes large polytomies.