Le code suivant génère une matrice X
(j'utilise Python 2.7):Comment effectuer du chargement de texte avec des supports en utilisant numpy
X = [random.randint(0, 2 ** 8) for _ in range(num)]
# Removes duplicates
X = list(set(X))
# Transforms into string representation
X = [('{0:0' + str(8) + 'b}').format(x) for x in X]
# Transforms each bit into an integer.
X = np.asarray([list(map(int, list(x))) for x in X], dtype=np.int8)
Ce qui est délibérément sous cette forme (En supposant que je produis seulement 10 numéros):
[[1 0 1 1 0 0 0 0]
[0 1 0 0 0 1 1 1]
[0 0 0 0 0 0 0 1]
[1 0 0 0 0 1 0 0]
[0 1 1 0 0 1 1 0]
[1 1 0 0 1 1 0 1]
[1 1 1 0 0 1 1 1]
[0 1 0 0 1 1 1 1]]
Mon but est de le stocker et de le charger de nouveau (avec des crochets) en utilisant numpy
. Dans le processus de stockage, j'utilise numpy.savetxt('dataset.txt', X, fmt='%d')
(qui supprime les crochets :() .Le problème est que je veux le recharger dans la même forme que celle montrée ci-dessus (y compris les crochets), en utilisant numpy.loadtxt(StringIO('dataset.txt'))
cela aide-t-il? pas sûr de savoir comment mettre en oeuvre. J'ai essayé de trouver un (efficace) astuce pour le faire, mais vraiment je suis coincé !! Toute aide est vraiment apprécié.
Merci
Vous pouvez faire l'aller-retour 'savetxt/loadtxt' avec un simple tableau comme celui-ci: ne vous attendez pas à voir [] dans le fichier, mais si vous n'avez pas besoin d'un fil lisible par l'homme e, la paire 'save/load' est meilleure (et plus rapide). – hpaulj