मेरे पास mystr = "100110"
की तरह एक स्ट्रिंग है (असली आकार बहुत बड़ा है) मैं इसे mynumpy = [1, 0, 0, 1, 1, 0], mynumpy.shape = (6,0)
जैसे numpy array में कनवर्ट करना चाहता हूं, मुझे पता है कि numpy में np.fromstring(mystr, dtype=int, sep='')
है, फिर भी समस्या यह है कि मैं अपनी स्ट्रिंग को विभाजित नहीं कर सकता इसके प्रत्येक अंक के लिए, इसलिए numpy इसे एक संख्या के रूप में लेता है। कोई विचार है कि मेरी स्ट्रिंग को numpy array में कैसे परिवर्तित करें?स्ट्रिंग को numpy array में कनवर्ट करें
6
A
उत्तर
16
list
ऐसा करने में आपकी सहायता कर सकता है।
import numpy as np
mystr = "100110"
print np.array(list(mystr))
# ['1' '0' '0' '1' '1' '0']
आप स्ट्रिंग के बजाय संख्या प्राप्त करना चाहते हैं:
print np.array(list(mystr), dtype=int)
# [1 0 0 1 1 0]
10
आप उन्हें पढ़ सकता है के रूप में ASCII वर्ण तो 48 (0
की ASCII मूल्य) घटाना। यह बड़े तारों के लिए सबसे तेज़ तरीका होना चाहिए।
>>> np.fromstring("100110", np.int8) - 48
array([1, 0, 0, 1, 1, 0], dtype=int8)
वैकल्पिक रूप से, आप पहली बार पूर्णांकों की एक सूची के लिए स्ट्रिंग परिवर्तित कर सकते हैं:
>>> np.array(map(int, "100110"))
array([1, 0, 0, 1, 1, 0])
संपादित: मैं था कुछ त्वरित समय और पहली विधि यह एक करने के लिए परिवर्तित करने की तुलना में 100 गुना अधिक तेजी से होता है पहले सूची
संबंधित मुद्दे
- 1. numpy array
- 2. numpy array
- 3. numpy array
- 4. numpy array
- 5. numpy array
- 6. numpy array
- 7. numpy array
- 8. numpy array
- 9. numpy array
- 10. numpy array
- 11. numpy array
- 12. numpy array
- 13. numpy array
- 14. numpy array
- 15. numpy array
- 16. numpy object_ array
- 17. 2 डी numpy array
- 18. एक numpy array
- 19. कोटलिन: जावा varargs में Array कनवर्ट करें
- 20. Numpy Array पंक्ति
- 21. एक numpy array
- 22. Numpy Rec Array
- 23. 2 डी numpy array
- 24. एक numpy array
- 25. एक numpy array
- 26. जावास्क्रिप्ट स्ट्रिंग को php array
- 27. पायथन: numpy float array
- 28. टेंसरफ्लो numpy array
- 29. Flatten OpenCV/Numpy Array
- 30. Flatten numpy array