-
Notifications
You must be signed in to change notification settings - Fork 42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
std::logic_error when generating kinship matrix #33
Comments
I have not seen this type of error before. Can you please paste the outputs of |
It's the Dutch LISA system on the SurfSara cluster: uname -a lsb_release -a I'm afraid I don't know what a torque system is. For the kinship-command I requested a node with 64 GB RAM (QPI 8.00 GT/s), which would also have a 20 MB cache. Also, given that it occured with the smaller subcohort but not the larger one, I doubt it is a memory issue. |
Can you please try to use just one thread? Maybe try it on a small chromosomal chunk and see if thread is the source of the problem. Thanks.
Xiaowei
… On Jun 7, 2017, at 8:44 AM, MostPJ ***@***.***> wrote:
Reopened #33.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.
|
Do you mind attached the first 5 lines of the input VCF and PED file? |
Thanks for the suggestion. I am trying to run kinship with a single thread right now, but it may be a couple of hours before the job is processed by the cluster. The ped file and VCF are attached to this post. I removed the sample IDs from the VCF, and edited those in the PED file for the sake of anonimization, but that shouldn't be a problem. The PED file contains 32 lines in total (a header line and 341 samples). EDITED: data files removed. As they are no longer relevant. |
The single-thread analysis (using the chromosome 22 file rather than the combined genome file) gave the same output. The only difference that I could see was that the "strol: invalid argument" message repeated 76 times.
|
Thanks for reporting back. This shows the problem is not related to
multithreading.
…On Fri, Jun 9, 2017 at 10:33 AM, MostPJ ***@***.***> wrote:
The single-thread analysis (using the chromosome 22 file rather than the
combined genome file) gave the same output. The only difference that I
could see was that the "strol: invalid argument" message repeated 76 times.
`Effective Options
--inVcf chr22.imputed.poly.vcf.gz
--out kinship_matrix_CC
--xHemi
--xLabel X
--ped dataF_P90c_TRAILS_CC_anthro.txt
--bn
--minMAF 0.05
--thread 1
[INFO] Program version: 20170210
[INFO] Analysis started at: Fri Jun 9 16:55:30 2017
[INFO] Empiricial kinship will be calculated.
strtol: Invalid argument
[INFO] Start creating empirical kinship from VCF file.
[INFO] Using default maximum missing rate = 0.05
terminate called after throwing an instance of 'std::logic_error'
what(): basic_string::_M_construct null not valid
`
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#33 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AAJoiAxy-dlUGK1LE6JeAVWwFrz_L0Ctks5sCWXVgaJpZM4NykE3>
.
|
As I don't have clue as this moment, do you think the VCF can be invalid? Maybe you can run to check validity using this: https://github.com/zhanxw/checkVCF |
I think I found the problem. I discovered that I could run a kinship analysis if I replaced the phenotypes (but not the sample IDs) of the smaller subset with values taken from the larger subset. Then I realized that there where missing gender values in the smaller subset. These unsexed samples are missing from my phenotype file. However, when I arbitrarily made them all females, the kinship analysis ran without error. Does the gender value in the ped file affect the kinship analysis? Because if it doesn't, using arbitrary genders will have solved this problem. |
Thanks for the information. |
OK. I am going to rerun the kinship analysis with the old, unmodified phenotype file while using the peopleExclude argument to ignore these samples. That should hopefully avoid the problem. |
Does this file |
Yes, it includes chromosome X. I tried generating a kinship matrix while excluding the unsexed samples. It worked, but it gets a bit strange, since I did get 36 "strtol: Invalid argument" warnings in the console output. When I did not exclude the unsexed samples, but set them all to female, I did not get any warnings. (For this test, I also used the chr22 vcf file as input, rather than the chrALL file, in order to save space, so this wasn't a comprehensive test.) I still don't get what the warning means. If I were to give an arbitrary gender to these 76 samples, and then exclude them via the peopleExclude argument, would that affect the kinship matrix? Since these 76 samples have no phenotypes, they are not going to be used in the analysis anyway. |
Adding this for clarity: when I generated a kinship matrix where the unsexed samples had been set to female, I used the chrALL file. However, I am running another analysis that is taking up a lot of disk space, so when I tried generating a kinship matrix while excluding the unsexed samples, I only used chr22. I don't think that explains the error messages, but I wanted to add it for completeness. |
You can safely ignore the warning "strtol: Invalid argument". It is just verbose warning messages when RVTESTS tries to convert a non-numeric value. For example, when RVTESTS process "NA", it will give this warning. I realize that this warning is no longer necessary. The latest version thus stops displaying warnings. |
Excellent. The issue has been resolved, then. Thank you for your help! |
Hello all,
I ran into an odd problem when trying to generate a kinship matrix using Rvtest. The dataset I am working on actually consists of two subcohorts that were genotyped and imputed together, but need to be analysed separately. As such, and because I only have limited disk space available, I decided to generate separate kinship matrices for the subcohorts. I had no problem generating a kinship matrix for the larger of the two, but when I did so for the smaller one, rvtest gave the following output:
(The “strol: Invalid argument” line is actually repeated exactly 1900 times - I just left the one entry to show where it appears.)
As ped file I use the phenotype file, containing only samples of the smaller subcohort. The command line used is the same as for the larger subcohort, except where it specifies a different ped file and output filename. The phenotypes files of both subcohorts were created in the same way, so it seems unlikely the cause lies there. What does this error mean?
The text was updated successfully, but these errors were encountered: