vegdist : error : input data must be numeric.

I read a table in R using

otu_table <- read.table("otu_table.csv", header = T, sep = ",")

Otu_tabel_as_matrix <- as.matrix(otu_table)

Then i set the row names as follows:
Removed the first column as it named my rownames as 1,2,3...

Otu_tabel_as_matrix <- Otu_tabel_as_matrix[, colnames(Otu_tabel_as_matrix) != "X"]

I set the new rownames:

rownames(Otu_tabel_as_matrix) <- c("Cupriavidus(100)", "Pseudomonadaceae_unclassified(100)",
"Brevibacillus(100)", "Planococcaceae_unclassified(93)", "Rhizobiaceae_unclassified(78)",
"Candidatus_Udaeobacter(100)", "Flavobacterium(100)", "Stenotrophomonas(100)",
"Chitinophaga(100)", "Rhodanobacter(100)", "uncultured(100)",
"Chryseobacterium(100)", "uncultured_ge(99)", "Subgroup_2_ge(100)",
"uncultured(100)", "Pseudomonas(100)", "uncultured(99)", "Enterobacteriaceae_unclassified(97)",
"Xanthobacteraceae_unclassified(100)")

dput(Otu_tabel_as_matrix)
structure(c(" 32802", " 28477", "118717", " 19454", " 38",
" 11431", " 0", " 0", " 69", " 921", " 303", " 1",
" 1686", " 6802", " 1045", " 699", " 28", " 194", " 965",
" 11821", " 72217", "106281", " 4626", " 7475", " 2112", " 3",
" 1", " 9", " 515", " 25499", " 7", " 222", " 585",
" 260", " 3837", " 1446", " 107", " 221", "14138", "40757",
"57791", "12138", "13595", " 5679", " 5", " 1", " 6",
" 492", "53297", " 1", " 768", " 826", " 1542", " 2467",
" 899", " 18", " 1052", " 51103", " 21238", "116748", " 10147",
" 9", " 6358", " 0", " 1594", " 244", " 706", " 3",
" 1", " 953", " 3258", " 702", " 392", " 28", " 197",
" 635", " 62970", " 15574", "125389", " 1433", " 127", " 2096",
" 2", " 2151", " 225", " 22701", " 23", " 7", " 256",
" 885", " 233", " 311", " 1055", " 89", " 284", "55195",
" 7825", "98369", "11735", " 2140", " 6087", " 0", " 618",
" 81", "30320", "10208", " 8", " 831", " 989", " 1851",
" 621", " 7027", " 67", " 1323", "61711", " 3853", "88559",
" 8832", " 7", " 9636", " 3", " 20", " 145", " 475",
" 7", " 2", " 1133", " 4786", " 901", " 634", " 29",
" 102", " 1266", " 71984", " 25757", "130608", " 662", " 6",
" 2101", " 13", " 64", " 14", " 13661", " 9", " 16",
" 236", " 770", " 238", " 534", " 1437", " 68", " 264",
"60765", "13045", "63699", " 7067", " 13", " 5771", " 4",
" 38", " 12", "18180", " 3488", " 3", " 987", " 1056",
" 1793", " 588", " 8202", " 39", " 1539", " 4", " 2",
" 17", "13317", " 3", "16553", " 3", " 0", " 3",
" 1065", " 11", " 4", " 4719", " 8300", " 6723", " 917",
" 15", " 2", " 5883", "48359", "49155", " 1403", "23524",
"18968", " 3688", " 2650", " 1486", " 346", " 1", " 0",
" 2273", " 3658", " 2953", " 4632", " 2697", " 37", " 1012",
" 1988", "63190", "67619", " 4610", "13222", " 9080", " 1559",
"17277", " 5136", " 1109", " 12", " 1", " 7712", " 1201",
" 806", " 846", " 5334", " 334", " 858", " 570", "70936",
"58715", " 1789", " 4300", "36011", " 1813", "13014", " 2255",
" 960", " 6", " 0", " 1449", " 1224", " 577", " 2093",
" 2212", " 169", " 434", " 779", "43611", "48410", " 2625",
"26191", " 284", " 3473", " 1225", " 3684", " 169", " 23",
" 3", " 2551", " 3552", " 3062", " 4620", " 3129", " 37",
" 3838", " 2807", "82669", "73803", "12981", " 1438", " 1069",
" 1367", " 7819", " 9769", " 2147", " 1384", " 1", "16637",
" 852", " 1415", " 711", " 5909", " 957", " 3825", " 446",
"66497", "50119", " 7543", " 6806", " 3697", " 1668", " 6130",
" 5499", " 2574", " 1484", " 0", " 7081", " 1409", " 842",
" 1936", " 2668", " 5738", " 2254", " 938", "55567", "41552",
" 702", "15265", " 142", " 4159", " 1775", " 3115", " 22",
" 2", " 1", " 1724", " 4334", " 4248", " 5190", " 2154",
" 71", " 1006", " 3574", "90744", "66522", " 4780", " 1326",
" 185", " 1308", "11665", "22278", " 28", " 31", " 0",
"20035", " 883", " 1144", " 594", " 4787", " 2294", " 815",
" 448", "74168", "37705", " 1521", " 4032", " 550", " 1953",
" 7922", "14631", " 36", " 37", " 0", " 9124", " 1742",
" 965", " 2319", " 2940", " 8136", " 599", " 1403", " 10",
" 5", " 29", " 178", " 60", "5844", "1365", " 2", " 103",
" 51", " 0", " 479", "9062", "6943", "7262", "2209", " 39",
" 5", "5494", " 4942", "98957", " 61", " 2516", "48554",
" 3511", " 1100", " 1176", " 2871", " 5", " 4", " 2",
" 1516", " 472", " 1831", " 91", " 28", " 36", " 908",
"18064", "92368", " 63", " 7001", "13073", " 4695", " 1147",
" 1382", " 197", " 4", " 10", " 44", " 3349", " 1856",
" 2947", " 88", " 30", " 47", " 1907", "17190", "93664",
" 56", " 1874", "35598", " 3170", " 2074", " 1558", " 2712",
" 5", " 7", " 49", " 1678", " 502", " 1093", " 88",
" 40", " 16", " 605", "102047", " 36385", " 33", " 9674",
" 7083", " 3282", " 22271", " 10838", " 50450", " 327", " 2",
" 4254", " 2038", " 732", " 1872", " 76", " 3150", " 3184",
" 1606", "70894", "94020", " 90", "15402", " 100", " 6049",
" 518", "11424", " 493", " 7", " 3", " 2566", " 5419",
" 3036", " 3882", " 1808", " 86", " 3089", " 3728", "58601",
"90905", " 42", " 2138", " 122", " 2622", "15610", "17820",
"28014", " 24", " 0", " 8514", " 1604", " 1193", " 638",
" 55", " 1259", " 3595", " 626", "87152", "19759", "21432",
" 3380", " 1860", " 4643", " 8709", " 3829", " 1414", " 345",
" 1", " 3406", " 2190", " 740", " 2698", " 3221", " 5969",
" 9757", " 1979", "42475", "62221", "24149", "13148", " 21",
" 7021", " 1590", " 6888", " 88", " 0", " 2", " 107",
" 4971", " 2997", " 4275", " 583", " 64", " 7668", " 2536",
"75394", "28182", "27294", " 568", " 83", " 4214", "11566",
" 5636", " 212", " 85", " 0", " 2864", " 2253", " 1537",
" 1055", " 4726", " 6735", "11105", " 915", " 29", " 4",
" 14", " 79", " 24", "13629", " 67", " 0", " 15",
" 22", " 0", " 1", "11791", " 7472", " 5431", " 390",
" 186", " 4", " 5477"), dim = c(19L, 30L), dimnames = list(
c("Cupriavidus(100)", "Pseudomonadaceae_unclassified(100)",
"Brevibacillus(100)", "Planococcaceae_unclassified(93)",
"Rhizobiaceae_unclassified(78)", "Candidatus_Udaeobacter(100)",
"Flavobacterium(100)", "Stenotrophomonas(100)", "Chitinophaga(100)",
"Rhodanobacter(100)", "uncultured(100)", "Chryseobacterium(100)",
"uncultured_ge(99)", "Subgroup_2_ge(100)", "uncultured(100)",
"Pseudomonas(100)", "uncultured(99)", "Enterobacteriaceae_unclassified(97)",
"Xanthobacteraceae_unclassified(100)"), c("S1N3d", "S1N6d",
"S1N9d", "S1O3d", "S1O6d", "S1O9d", "S1SB3d", "S1SB6d", "S1SB9d",
"S1Soil", "S2N3d", "S2N5d", "S2N8d", "S2O3d", "S2O5d", "S2O8d",
"S2SB3d", "S2SB5d", "S2SB8d", "S2Soil", "S3N15d", "S3N4d",
"S3N8d", "S3O15d", "S3O4d", "S3O8d", "S3SB15d", "S3SB4d",
"S3SB8d", "S3Soil")))

But here the columns are considered as characters.

I want to create a bray-curtis dissimilarity matrix but i get the following error because the numerical values in the above matrix are characters.

distances <- vegdist(Otu_tabel_as_matrix, method = "bray")
Error in vegdist(Otu_tabel_as_matrix, method = "bray") :
input data must be numeric

I tried the following too:

numeric_matrix <- as.numeric(Otu_tabel_as_matrix)

The row names and column names disappeared.

How can i solve this problem?
Regards
Hira

Instead of a matrix, use a data.frame or tibble

1 Like

This topic was automatically closed 42 days after the last reply. New replies are no longer allowed.

If you have a query related to it or one of the replies, start a new topic and refer back with a link.