Good morning. I am trying to create a phyloseq object with the following code:
otu <- read.table("C:/Users/acer/Datos_tesis/Combinados/Phyloseq/OTUcombinado.tsv", header = TRUE, sep = "\t")
otu_mat <- as.matrix(otu[, -1]) # Exclude the first column
rownames(otu_mat) <- otu$OTU_ID # Assign identifiers as row names
OTU <- otu_table(otu_mat, taxa_are_rows = FALSE)
# Load sample data
samples <- read.table("C:/Users/acer/Datos_tesis/Combinados/Phyloseq/metadataBBCH.tsv", header = TRUE, sep = "\t")
SAM <- sample_data(samples)
# Read the .xlsx file
tax <- read_excel("C:/Users/acer/Tesis_Data/Combined/Phyloseq/taxonomy/xd.xlsx")
TAX <- tax_table(as.matrix(tax))
# Load the phylogenetic tree
tree <- read_qza("C:/Users/acer/Tesis_Data/Combined/Phyloseq/rooted-tree-BB.qza")$data
PHY <- phy_tree(tree)
# Load the reference sequences
refseqs <- readDNAStringSet("C:/Users/acer/Tesis_Data/Combined/Phyloseq/aligned-dna-sequences.fasta")
REF <- refseq(refseqs)
#Create phyloseq please work aaaaa)
physeq <- phyloseq(OTU, TAX, SAM, PHY, refseq=REF)
Now it turns out that when I go to create the phyloseq. It gives me the following error:
Error in validObject(.Object) : invalid class “phyloseq” object:
Component taxa/OTU names do not match.
Taxa indices are critical to analysis.
Try taxa_names()
But I have already verified that the OTU_IDs that I have from the Tax file and from my OTU table are the same and are in the same order. And yet I still get the error. I have already looked at some solutions on the forum but none of them have helped me. I would appreciate your help