Basis – T-Test -> Groeperingsfactor moet precies 2 niveaus hebben

Ik ben relatief nieuw voor R. Voor mijn opdracht moet ik beginnen met het uitvoeren van een T-Test door te kijken naar het effect van het (conservatieve of arbeids)vermogen van een politicus op hun werkelijke brutovermogen en reëel nettovermogen. Ik moet proberen het effect van het dienen in kantoorvermogen in te schatten met behulp van een eenvoudige t-test.

De dataset heet takehome.dta

Labour en Tory zijn binair waarbij 1 aangeeft dat ze voor die partij dienen en 0 anders.

De variabelen voor rijkdom zijn lnrealgross en lnrealnet.

Ik heb de dataset geïmporteerd en bijgevoegd, maar wanneer ik een eenvoudige t-test probeer uit te voeren. Ik krijg de volgende melding “groeperingsfactor moet precies 2 niveaus hebben.” Ik weet niet helemaal zeker waar ik de fout lijk te gaan. Om het even welke hulp zou worden gewaardeerd!


Antwoord 1, autoriteit 100%

doe je dit:

t.test(y~x)

wanneer je dit wilt doen

t.test(y,x)

Gebruik in het algemeen de ~dan heb je gegevens zoals

y <- 1:10
x <- rep(letters[1:2], each = 5)

en de ,als je gegevens hebt zoals

y <- 1:5
x <- 6:10

Ik neem aan dat je zoiets doet als:

y <- 1:10
x <- rep(1,10)
t.test(y~x) #instead of t.test(y,x)

omdat de fout suggereert dat er geen variatie is in de groeperingsfactor x


Antwoord 2, autoriteit 36%

Het verschil tussen ~ en , is het type statistische test dat u uitvoert. ~ geeft je de gemiddelde verschillen. Dit is voor afhankelijke steekproeven (bijvoorbeeld voor en na). , geeft u het verschil in middelen. Dit is voor onafhankelijke monsters (bijv. behandeling en controle). Deze twee testen zijn niet uitwisselbaar.


Antwoord 3, autoriteit 7%

Ik had een soortgelijk probleem en realiseerde me, gezien de grootte van mijn dataset, niet dat een van mijn y’s geen waarden had voor een van mijn niveaus. Ik had een reeks genmetingen gedaan voor twee groepen en één gen had alleen metingen voor groep 2 en niet voor groep 1. Ik had het niet eens opgemerkt, maar om de een of andere reden gaf dit dezelfde fout als wat ik zou krijgen als ik dat ook had gedaan veel niveaus. De oplossing is om die y of in mijn geval gen uit mijn analyse te verwijderen en dan is de fout opgelost.

Other episodes