Comment voulez-vous enregistrer les données dans un fichier texte dans un format donné?
Je veux enregistrer une matrice dans un fichier texte, donc je peux le lire par un autre programme. Maintenant j'utilise:
save('output.txt', 'A','-ascii');
Mais cela enregistre mon fichier en tant que
6.7206983e+000 2.5896414e-001
6.5710723e+000 4.9800797e-00
6.3466334e+000 6.9721116e-001
5.9975062e+000 1.3346614e+000
6.0224439e+000 1.8127490e+000
6.3466334e+000 2.0517928e+000
6.3965087e+000 1.9721116e+000
Mais je tiens à les avoir sauvés sans le "e-notation" et non pas avec tous les chiffres. Est-il un moyen facile de faire cela?
Edit: Merci à vous! Qui fonctionne très bien. Désolé, mais je pense que j'ai foiré votre modifier à l'aide de la restauration.
Pas de problème, la mise en forme a toujours l'air bon... et vous vous retrouvez avec un "Nettoyage" badge! 😉
OriginalL'auteur Lucas | 2009-05-29
Vous devez vous connecter pour publier un commentaire.
Je voudrais utiliser le
fprintf
fonction, ce qui vous permettra de définir pour vous-même ce que le format de sortie des données. Par exemple:Ce sera la sortie de la matrice A avec 6 chiffres significatifs après la virgule. Notez que vous avez également utiliser les fonctions
fopen
etfclose
..'
est nécessaire dans le code de transposerA
dans un 2-par-N de la matrice pour FPRINTF à lire à partir de columnwise.OriginalL'auteur gnovice
Idem gnovice la solution, si vous avez besoin de performance & mise en forme personnalisée.
dlmwrite
vous donne un certain contrôle mondial, et non pas par champ) de mise en forme. Mais il souffre d'une baisse de rendement. J'ai couru un test il y a quelques années et dlmwrite était quelque chose comme 5 à 10 fois plus lent que le fopen/fprintf/fclose solution. (edit: je parle de matrices de grande taille, comme un 15x10000 matrice)OriginalL'auteur Jason S