J'ai une trame de données sans colonnes: Je veux modifier les noms d'en-tête en "x" et "y" p> Je sais que je peux Faites ceci en utilisant: p> Ce que je voudrais faire est d'écrire une fonction où je pourrais passer une image de données comme argument et placer les en-têtes avec ces noms d'en-tête. < / p> J'ai essayé: p> Merci d'avance pour toute aide. P> P>
3 Réponses :
Votre fonction définit les noms; Vous avez juste besoin de retourner l'objet.
> setNames(data.frame(v1=c(1:10), v2=seq(1, 100, length=10)), c("X","Y")) X Y 1 1 1 2 2 12 3 3 23 4 4 34 5 5 45 6 6 56 7 7 67 8 8 78 9 9 89 10 10 100
Oui. Et si vous regardez le code source de setnames code>, vous verrez à quel point vous êtes proche de cela.
Il existe une fonction R qui fait déjà cela, bien que la modification du cadre de données de votre environnement, elle renvoie la trame de données renommée: en fait, vous utilisez déjà cette fonction. , d'une manière rond-point, lorsque vous appelez Notez que presque aucune fonction dans R ne modifie les valeurs qu'ils ont été transmises - Presque tous sont «fonctionnels» dans le style - exécutant les modifications apportées à une nouvelle copie et qui reviennent. Pour cette raison, vous devriez vous attendre à voir et à écrire beaucoup de code dans le formulaire: Une autre technique que vous trouverez utile est la Renommer la fonction CODE> Dans le noms (df) ... p>
x = f (x) code>. P>
Remodape CODE> Emballez: P>
df<-rename(df,c(v1="X", v2="Y"))
Si vous souhaitez étapes latéralement, la copie interne avec les noms Vous pouvez définir les noms d'une page si vous ne voulez pas utiliser data.Tables, vous pouvez Utilisez la fonction <- code> et
df <-rnerame (df, c (v1 = "x", v2 = "y")) CODE> et
SETNAMES CODE> Vous pouvez utiliser le package
data.Table code> package
.table code> par référence (sans copie) à l'aide de
setnames code> p>
setattr code> de la fonction
data.Table.Table code> (qui est très similaire à la fonction du même nom dans le package
bit code>) p>