Sunday, December 11, 2011

Dodecad Oracle (K12a edition)

I have created a new version of the Dodecad Oracle for use with the K12a calculator.

You can refer to the original Dodecad Oracle for detailed usage instructions.

(The only difference in the use of the program is that the number of populations is 204, so make sure to use this if you plan to remove any reference populations, as mentioned in the instructions)

In short:
  • you first load the file DodecadOracleK12a.RData in R. You can do this by double-clicking on this file in Windows, or using the File->Load Workspace menu. In Linux, you can use the "load" command, e.g., load('/home/ubuntu/Desktop/DodecadOracleK12a.RData')
  • You then enter commands at the command prompt
Some examples:

Comparing a population against other populations

DodecadOracle("Somali_D")
[,1] [,2]
[1,] "Somali_D" "0"
[2,] "Ethiopian_Jews" "12.3049"
[3,] "Ethiopians" "12.3309"
[4,] "Sandawe_He" "38.2093"
[5,] "MKK25" "40.7983"
[6,] "Egyptans" "63.2307"
[7,] "Yemenese" "69.1628"
[8,] "Moroccans" "72.6233"
[9,] "Jordanians" "73.1838"
[10,] "Palestinian" "74.2867"

Comparing a population against 2-way population mixes:

DodecadOracle("Pathan",mixedmode=T)
[,1] [,2]
[1,] "Pathan" "0"
[2,] "79.5% Sindhi + 20.5% Lezgins" "3.948"
[3,] "82% Sindhi + 18% Chechens_Y" "4.0251"
[4,] "16.7% Adygei + 83.3% Sindhi" "4.5471"
[5,] "83.4% Sindhi + 16.6% Balkars_Y" "4.6487"
[6,] "80.8% Sindhi + 19.2% Kumyks_Y" "4.7067"
[7,] "83.7% Sindhi + 16.3% North_Ossetians_Y" "4.8352"
[8,] "80.9% Sindhi + 19.1% Nogais_Y" "4.8821"
[9,] "66.6% Sindhi + 33.4% Tajiks_Y" "5.6708"
[10,] "86.4% Sindhi + 13.6% Georgians" "6.2927"

Comparing an individual against populations

DodecadOracle(c(8.4, 0, 2.8, 6, 2.2, 0.1, 40.3, 25.9, 0.3, 11.9, 1.5, 0.5))
[,1] [,2]
[1,] "Iranian_D" "2.2405"
[2,] "Kurd_D" "3.8092"
[3,] "Kurds_Y" "5.4945"
[4,] "Iranians" "6.634"
[5,] "Uzbekistan_Jews" "12.8957"
[6,] "Turks" "17.3173"
[7,] "Turkmens_Y" "17.7316"
[8,] "Iranian_Jews" "18.14"
[9,] "Assyrian_D" "18.8968"
[10,] "Azerbaijan_Jews" "18.9444"

Comparing an individual against 2-way population mixes

DodecadOracle(c(28, 0.8, 1.6, 49.9, 1.9, 0, 10.6, 4.1, 0, 2.4, 0, 0.6),mixedmode=T)
[,1] [,2]
[1,] "47.7% French_D + 52.3% Mordovians_Y" "2.5849"
[2,] "48.3% French + 51.7% Mordovians_Y" "2.6012"
[3,] "36.3% Spaniards + 63.7% Mordovians_Y" "2.9985"
[4,] "36% Spanish_D + 64% Mordovians_Y" "3.0577"
[5,] "65.9% Russian_D + 34.1% Spaniards" "3.0923"
[6,] "35.9% IBS + 64.1% Mordovians_Y" "3.0943"
[7,] "40% French + 60% Ukranians_Y" "3.1662"
[8,] "66.4% Russian_D + 33.6% IBS" "3.2359"
[9,] "24.5% Swedish_D + 75.5% Hungarians" "3.3021"
[10,] "39.3% French_D + 60.7% Ukranians_Y" "3.4046"


The numbers to the right of each result represent the "goodness" of the match; the lower, the better. If you wanted to list the top-30 results, in any of the above commands, you would enter, e.g.,

DodecadOracle(c(28, 0.8, 1.6, 49.9, 1.9, 0, 10.6, 4.1, 0, 2.4, 0, 0.6),mixedmode=T, k=30)

If you recently joined the Project, please consider leaving a brief comment in the Information about Project Samples thread.

8 comments:

  1. Not sure why I'm getting Mixed Germanic and Dutch before CEU and the British populations in that I'm a Tennessean with roughly 3/4ths British Isle's ancestry, the remaining quarter being a mix of German and Iberian.

    Brits and Utahns do make the list in some measure so the results seem believable.



    K12a:
    DodecadOracle(c(38.56,0.11,0.02,43.44,0.25,0.00,10 .03,5.75,0.00,1.35,0.35,0.15))
    [,1] [,2]
    [1,] "Mixed_Germanic_D" "4.4115"
    [2,] "Dutch_D" "6.103"
    [3,] "CEU25" "6.6756"
    [4,] "German_D" "8.5308"
    [5,] "Kent_1KG" "8.5788"
    [6,] "British_D" "8.6306"
    [7,] "British_Isles_D" "8.7857"
    [8,] "French" "9.1252"
    [9,] "Cornwall_1KG" "9.5826"
    [10,] "French_D" "9.8159"

    Two way mix mode –


    [,1] [,2]
    [1,] "74.1% British_D + 25.9% Bulgarians_Y" "1.0815"
    [2,] "74.2% Kent_1KG + 25.8% Bulgarians_Y" "1.1205"
    [3,] "85.2% Mixed_Germanic_D + 14.8% Bulgarians_Y" "1.1247"
    [4,] "73.8% British_Isles_D + 26.2% Bulgarians_Y" "1.1584"
    [5,] "85.2% Mixed_Germanic_D + 14.8% Bulgarian_D" "1.2996"
    [6,] "74.1% British_D + 25.9% Bulgarian_D" "1.36"
    [7,] "25.8% Bulgarian_D + 74.2% Kent_1KG" "1.3872"
    [8,] "79% CEU25 + 21% Bulgarians_Y" "1.4182"
    [9,] "73.7% British_Isles_D + 26.3% Bulgarian_D" "1.4201"
    [10,] "77.6% French + 22.4% Russian_B" "1.4797"


    For comparison what I got with V1:

    DodecadOracle(c(10.27,51.84,26.91,0.00,8.75,0.61,0 .01,0.23,0.00,0.95,0.36,0.07))
    [,1] [,2]
    [1,] "CEU" "2.9717"
    [2,] "N._European" "5.0694"
    [3,] "Orcadian" "5.2101"
    [4,] "Argyll_1KG" "5.391"
    [5,] "Orkney_1KG" "5.6548"
    [6,] "German_D" "8.5726"
    [7,] "French" "9.6303"
    [8,] "French_D" "10.0577"
    [9,] "Mixed_Germanic_D" "10.6703"
    [10,] "Dutch_D" "11.7807"

    Two way mix mode -
    DodecadOracle(c(10.27,51.84,26.91,0.00,8.75,0.61,0 .01,0.23,0.00,0.95,0.36,0.07),mixedmode=T)
    [,1] [,2]
    [1,] "90.4% Orcadian + 9.6% S_Italian_D" "0.4005"
    [2,] "89.7% Orkney_1KG + 10.3% S_Italian_D" "0.4049"
    [3,] "12.5% C_Italian_D + 87.5% Orkney_1KG" "0.4141"
    [4,] "90.1% Orcadian + 9.9% Sicilian_D" "0.4439"
    [5,] "89.7% Orcadian + 10.3% S_Italian_Sicilian_D" "0.4723"
    [6,] "89.3% Orkney_1KG + 10.7% Sicilian_D" "0.4816"
    [7,] "11.7% C_Italian_D + 88.3% Orcadian" "0.4921"
    [8,] "14.5% O_Italian_D + 85.5% Orkney_1KG" "0.5639"
    [9,] "13.5% O_Italian_D + 86.5% Orcadian" "0.5794"
    [10,] "84.2% Orcadian + 15.8% Tuscan_X" "0.5924"

    ReplyDelete
  2. I found out why my results were a bit funky, I did not catch that you had an individual results tab with my ID in it (DOD152) so I had tried to run the DIY version and came out with slightly different results than what was in the spreadsheet so I probably did something wrong.

    With the spreadsheet results my Oracle results seem more in line with my ancestry.

    [,1] [,2]
    [1,] "Mixed_Germanic_D" "3.7376"
    [2,] "Dutch_D" "5.3329"
    [3,] "CEU25" "5.9841"
    [4,] "Kent_1KG" "7.6811"
    [5,] "British_D" "7.7421"
    [6,] "British_Isles_D" "8.0231"
    [7,] "French" "8.6232"
    [8,] "Cornwall_1KG" "8.6325"
    [9,] "German_D" "8.8972"
    [10,] "French_D" "9.3941"

    Two way mix mode –

    [,1] [,2]
    [1,] "76.9% Kent_1KG + 23.1% Bulgarians_Y" "1.0251"
    [2,] "76.8% British_D + 23.2% Bulgarians_Y" "1.039"
    [3,] "8.1% Greek_D + 91.9% Mixed_Germanic_D" "1.2969"
    [4,] "23.1% Bulgarian_D + 76.9% Kent_1KG" "1.3018"
    [5,] "76.8% British_D + 23.2% Bulgarian_D" "1.3169"
    [6,] "74.9% Cornwall_1KG + 25.1% Bulgarians_Y" "1.3831"
    [7,] "92.8% Mixed_Germanic_D + 7.2% S_Italian_D" "1.4595"
    [8,] "90% Mixed_Germanic_D + 10% Tuscan" "1.4958"
    [9,] "8.8% C_Italian_D + 91.2% Mixed_Germanic_D" "1.5392"
    [10,] "90.2% Mixed_Germanic_D + 9.8% O_Italian_D" "1.5448"

    ReplyDelete
  3. A question:

    You stated that "(t)he numbers to the right of each result represent the 'goodness' of the match; the lower, the better". How high do these numbers of "goodness" go and what is a lower number that is best to have?

    I am trying to make sense of mixed mode results.

    ReplyDelete
  4. The number can be as low as zero if your admixture proportions are exactly equal to the average proportions of a population or a 2-way mix. You can compare your results with the population averages to see which components make up most of the difference.

    ReplyDelete
  5. Is there a way to calculate the closest individuals, instead of populations ? I think you should include this option in every run, if possible. Thanks,

    ReplyDelete
  6. Can you use great grandparents for the four? Rachel

    ReplyDelete
  7. Anyone know when "Oceania" will be included in the K12a calculator? I got my results back from FTDNA and I have 33% Oceania since my mother is from the Pacific. Thanks.

    ReplyDelete
  8. You can try the 'world9' calculator if you have Oceanian ancestry

    http://dodecad.blogspot.com/2011/12/world9-calculator.html

    ReplyDelete