Een tweerichtingstabel maken in r (met voorbeelden)


Een tweerichtingstabel is een soort tabel die de frequenties van twee categorische variabelen weergeeft.

De volgende tweerichtingstabel toont bijvoorbeeld de resultaten van een onderzoek waarbij 100 mensen werd gevraagd welke sport zij het liefste beoefenen: honkbal, basketbal of voetbal.

De rijen geven het geslacht van de respondent weer en de kolommen geven de sport aan die hij kiest:

Deze zelfstudie biedt verschillende voorbeelden van het maken en gebruiken van bidirectionele arrays in R.

Voorbeeld 1: Maak een geheel nieuwe tabel met dubbele invoer

De volgende code laat zien hoe u een geheel nieuwe tabel met dubbele invoer kunt maken met behulp van de functie as.table() :

 #create matrix
data <- matrix(c(13, 23, 15, 16, 20, 13), ncol= 3 )

#specify row and column names of matrix
rownames(data) <- c('Male', 'Female')
colnames(data) <- c('Baseball', 'Basketball', 'Football')

#convert matrix to table
data <- as. table (data)

#display table
data

       Baseball Basketball Soccer
Male 13 15 20
Female 23 16 13

Voorbeeld 2: Maak een bidirectionele tabel op basis van gegevens

De volgende code laat zien hoe u een bidirectionele tabel maakt op basis van een dataframe:

 #create data frame
df <- data. frame (sport=c(' Base ', ' Base ', ' Bask ', ' Foot ', ' Foot '),
                 gender=c(' Male ', ' Female ', ' Male ', ' Male ', ' Female '))

#view data frame
df

#create two way table from data frame
data <- table(df$gender, df$sport)

#display two way table
data 

         Base Basketball
  Female 1 0 1
  Male 1 1 1

Voorbeeld 3: Bereken de margesommen van een tabel met dubbele invoer

De volgende code laat zien hoe u de marges van een dubbele tabel kunt berekenen met behulp van de functie margin.table() :

 #create matrix of data
data <- matrix(c(13, 15, 20, 23, 16, 13), ncol=3)
rownames(data) <- c(' Male ', ' Female ')
colnames(data) <- c(' Baseball ', ' Basketball ', ' Football ')

#find sum of genders
margin. table (data, margin=1)

  Male Female 
    49 51

#find sum of sports

margin. table (data, margin=2)

Baseball Basketball Soccer 
        28 43 29 

Voorbeeld 4: Visualisatie van de frequenties van een bidirectionele tabel

Eén manier om frequenties in een tweerichtingstabel te visualiseren is door een staafdiagram te maken:

 barplot(data, legend= True , beside= True , main=' Favorite Sport by Gender ') 

Een andere manier om frequenties in een tweerichtingstabel te visualiseren is door een tegeldiagram te maken:

 mosaicplot(data, main=' Sports Preferences ', xlab=' Gender ', ylab=' Favorite Sport ')


Op deze pagina vindt u meer R-tutorials.

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert