0
$\begingroup$

I'm using structure for the first time and I fail to execute a "job". For some reason, structure interprets the pop ID column as locus.

I have following .txt file

head of the .txt file

The first column are sample labels, the second column are population IDs and then there are 26 columns containing the locus information (i.e. 13 markers). Thus, in total 28 columns. It is a diploïd organism so each locus consists of 2 consecutive columns (as described in structure manual). In total there are 64 rows (so 64 samples)

I load this .txt file into structure, specifying following parameters:

-number of individuals 64

-Ploidy of data 2

-number of loci 13

-missing data value -9

-special format: data file stores data for individuals in single line

-individual ID for each individual

-putative population origin for each individual

The loaded file looks like:

head of structure file

This looks good. My samples have a separate column, pop ID is a separate column for possible populations an then for each locus there are 2 columns. Not all loci are visible on screenshot, but there are 13.

I want to calculate Delta K and therefore I want to run a job. However when I run it, I get following error:

enter image description here

I get this error for each row/individual. It appears that structure interprets the pop ID values ("Noord","Zuid", "onbekend") as 14th locus, but I have never specified a 14th locus. I fail to understand why this happens.

When I run the program without pop ID column, it works.

Could anyone please advise me on how to solve this error?

$\endgroup$

1 Answer 1

1
$\begingroup$

Hmmmm .... you don't actually need pop ID to work for Structure, providing their are no logical errors (you get a wrong answer). The bit that must work is the a priori number of populations in the data set. You are then going to manually (or via a script) feed a range of a priori values into Structure, run each and plot the likelihood. Where the likelihood plateaus thats the number of populations contained within your data. This is the key output of Structure.

Personally, I would perform a Structure run on the test data and remove the pop ID column and check the answers (likelihood -lnL) are identical. Thereafter use an approach such as $F_{ST}$ to interrogate the exact members of each population delineation.


I think your test will work .... The only thing I can think of is the header comprises a space, This format just needs checking against the test data.

$\endgroup$
3
  • $\begingroup$ Hi Michael, thank you for your answer. I checked the text file in notepad ++ showing all characters, but nothing seems wrong. I would also like to make a triangle plot in structure, isn't it therefore required to have pop IDs? Anyway, it should work even with pop IDs included. My plan for now is to run the structure analyses (from K=1 to K=9) and then analyse the data with structure harvester to determine the number of populations (delta K) $\endgroup$
    – RobH
    Commented Aug 13, 2020 at 10:07
  • 1
    $\begingroup$ I agree that pop ID would be useful, and if membership of a population is not intuitive (e.g. geographic foci) - its imporant, but debugging this remotely is tricky. Your strategy K1 to K9 is absolutely correct. Structure is rarely used in isolation however, hence population membership can be explored notably by Fst using a variety of methods. $\endgroup$
    – M__
    Commented Aug 13, 2020 at 10:59
  • $\begingroup$ Yes, my next step would be to analyse the data in popgene32. Thank you for the help. $\endgroup$
    – RobH
    Commented Aug 13, 2020 at 11:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.