Bonne façon de convertir des données.cadre numérique de la matrice, lorsque df contient également des chaînes?

J'ai un bloc de données à partir d'une prise de .fichier csv qui contient numérique et les valeurs de caractères. Je veux convertir ce bloc de données dans une matrice. Tous contenant de l'information sont des chiffres (le non-nombre de lignes que j'ai supprimé), il devrait donc être possible de convertir les données d'image en numérique de la matrice. Cependant, je ne obtenir une matrice de caractère.

J'ai trouvé la seule façon de résoudre ce problème est d'utiliser as.numeric pour chaque ligne, mais cela est assez fastidieux. Je suis tout à fait sûr, il y a un moyen de le faire avec une sorte de if(i in 1:n)-forme, mais je ne peux pas comprendre comment cela pourrait fonctionner. Ou est le seul moyen vraiment à déjà commencer avec des valeurs numériques, comme proposé ici(Faire de la matrice numérique et le nom des commandes)?

Sans doute, c'est une chose très facile pour la plupart d'entre vous 😛

La matrice est beaucoup plus grand, ce n'est que la première quelques lignes... Voici le code:

cbind(
as.numeric(SFI.Matrix[ ,1]),
as.numeric(SFI.Matrix[ ,2]),
as.numeric(SFI.Matrix[ ,3]),
as.numeric(SFI.Matrix[ ,4]),
as.numeric(SFI.Matrix[ ,5]),
as.numeric(SFI.Matrix[ ,6]))  

# to get something like this again:

Social.Assistance Danger.Poverty GINI S80S20 Low.Edu        Unemployment 
0.147             0.125          0.34    5.5   0.149        0.135 0.18683691
0.258             0.229          0.27    3.8   0.211        0.175 0.22329362
0.207             0.119          0.22    3.1   0.139        0.163 0.07170422
0.219             0.166          0.25    3.6   0.114        0.163 0.03638525
0.278             0.218          0.29    4.1   0.270        0.198 0.27407825
0.288             0.204          0.26    3.6   0.303        0.211 0.22372633

Merci pour toute aide!

  • La conversion des nombres stockés en tant que chaînes de caractères de retour à la numerics est trivial. La conversion d'autres chaînes numériques est impossible (à moins qu'ils soient des facteurs, dans ce cas, c'est une terrible pratique, statistiquement). Comme pour les facteurs, vous n'avez pas les mentionner, mais la conversion de facteurs numérique est la seule partie intéressante de cette question.
InformationsquelleAutor PikkuKatja | 2013-05-13