Ich möchte prüfen, ob alle Elemente einer Liste das Muster haben, das ich brauche, sonst stoppe ich das ganze Skript.R Regex Semikolon
Die Beispielliste sieht wie folgt aus:
[1]
Archaea;Euryarchaeota;Methanobacteria;Methanobacteriales;Methanobacteriaceae;Methanobrevibacter;
[2]
Archaea;Euryarchaeota;Methanobacteria;Methanobacteriales;Methanobacteriaceae;Methanosphaera;
[3]
Archaea;Euryarchaeota;Methanobacteria;Methanobacteriales;Methanobacteriaceae;Methanosphaera;
[4]
Bacteria;Actinobacteria;Actinobacteria;Bifidobacteriales;Bifidobacteriaceae;Bifidobacterium;
[5]
Bacteria;Actinobacteria;Actinobacteria;Bifidobacteriales;Bifidobacteriaceae;Bifidobacterium;
[6]
Bacteria;Actinobacteria;Actinobacteria;Bifidobacteriales;Bifidobacteriaceae;Bifidobacterium;
[7]
Bacteria;Actinobacteria;Actinobacteria;Coriobacteriales;Coriobacteriaceae;Gordonibacter;
[8]
Bacteria;Actinobacteria;Coriobacteriia;Coriobacteriales;Coriobacteriaceae;;
[9]
Bacteria;Actinobacteria;Coriobacteriia;Coriobacteriales;Coriobacteriaceae;;
I Want alle Einträge genau sechs Semikolons haben. Ich habe versucht, ein Muster mit grepl zu tun, aber ich habe Probleme mit dem richtigen Muster. Hier ist, was ich versucht
if(!any(grepl(";{6}", taxonomy))) { Through error message if the
taxonomy is not in the right format stop("Wrong number of taxonomic
classes\n Taxonomic levels have to be separated by semicolons (six in
total). IMPORTANT: if taxonomic information at any level is missing,
the semicolons are still needed:\n
e.g.Bacteria;Bacteroidetes;Bacteroidia;Bacteroidales;Prevotellaceae;Prevotella;
e.g.Bacteria;Bacteroidetes;Bacteroidia;Bacteroidales;Prevotellaceae;;")
} else {
Aber ich immer FALSCH bekommen.
Blick auf 'str_count' von' stringr' Paket – Sotos