Video: Political Documentary Filmmaker in Cold War America: Emile de Antonio Interview 2024
Varje funktion i R förväntar att dina data ska vara i ett visst format. Det betyder inte helt enkelt om det är ett heltal, karaktär eller faktor, men också om du tillhandahåller en vektor, en matris, en dataram eller en lista. Många funktioner kan hantera flera format, men ibland är resultatet inte vad du förväntar dig alls.
Till exempel försöker R automatiskt att minska antalet dimensioner när du subsätter en matris, en array eller en dataram. Om du vill beräkna radsummorna för de numeriska variablerna i en dataram, till exempel, kan den inbyggda dataramen sova - du kan skriva en liten funktion så här:
rowsum. df <- funktion (x) {
id <- sapply (x, är. numerisk)
rowSums (x [id])
}
Om du försöker ut det på två inbyggda datarammer, tryck och sömn, får du ett resultat för den första men följande felmeddelande för det andra: >> rowsum. df (sömn)
Fel i radSummar (x [id]):
'x' måste vara en grupp med minst två dimensioner
Eftersom sömn bara innehåller en enda numerisk variabel, x [id] returnerar en vektor istället för en dataram, och det orsakar felet i rowSums ().