ich habe folgende Datenbank als Grundlage in meinem Coding.
Code: Alles auswählen
'data.frame': 5303 obs. of 9 variables:
$ Metric.ID : num 7156 7220 7220 7220 7220 ...
$ Metric.Name : Factor w/ 99 levels "Avoid accessing data by using the position and length",..: 51 59 59
$ Technical.Criterion: Factor w/ 25 levels "Architecture - Multi-Layers and Data Access",..: 4 9 9 9 9 9 9 9 9 9 ...
$ RT.Snapshot.name : Factor w/ 1 level "2017_RT12": 1 1 1 1 1 1 1 1 1 1 ...
$ Violation.status : Factor w/ 2 levels "Added","Deleted": 2 1 2 2 2 1 1 1 1 1 ...
$ Critical.Y.N : num 0 0 0 0 0 0 0 0 0 0 ...
$ Grouping : Factor w/ 29 levels "281","Bes",..: 27 6 6 6 6 7 7 7 7 7 ...
$ Object.type : Factor w/ 11 levels "Cobol Program",..: 8 7 7 7 7 7 7 7 7 7 ...
$ Object.name : Factor w/ 3771 levels "[S:\\SOURCES\\",..: 3771 3770 3769 3768 3767 3
Folgende Frage gibt es zu beantworten: Es gibt 25 Level von "Architektur Criterion". Zu jeder will ich wissen, wie viele Einträge es gibt mit den beiden Violation.Status Möglichkeiten (Added und Deleted), wenn man das Ganze noch nach "Critical.Y.N" unterscheidet. Hier ist neben der 0 auch der Wert 1 zulässig. Das Ganze sollte so in etwa aussehen.
Folgendes Coding wurde mir bislang genannt, aber die Definition von Tab ist mir noch schleierhaft.
Code: Alles auswählen
for(i in 1:length(unique(b$Violation.status))){
tab[[i]] <- xtabs(Critical.Y.N ~ Technical.Criterion + Object.type, b)
names(dimnames(tab[[i]]))[2] <- paste("Violation.status", i)
}
Gruß
Talcom