क्या संरचित सरणी को वेक्टर में परिवर्तित करने के लिए कोई पाइथोनिक तरीका है?पाइथन सरणी 1-डी वेक्टर
उदाहरण के लिए: की तरह एक वेक्टर के लिए
[(9,), (1,), (1, 12), (9,), (8,)]
:
[9,1,1,12,9,8]
क्या संरचित सरणी को वेक्टर में परिवर्तित करने के लिए कोई पाइथोनिक तरीका है?पाइथन सरणी 1-डी वेक्टर
उदाहरण के लिए: की तरह एक वेक्टर के लिए
[(9,), (1,), (1, 12), (9,), (8,)]
:
[9,1,1,12,9,8]
In [15]: import numpy as np
In [16]: x = np.array([(9,), (1,), (1, 12), (9,), (8,)])
In [17]: np.concatenate(x)
Out[17]: array([ 9, 1, 1, 12, 9, 8])
एक अन्य विकल्प, np.hstack(x)
है, लेकिन के लिए मैं की तरह एक सरणी परिवर्तित करने के लिए कोशिश कर रहा हूँ
इस उद्देश्य, np.concatenate
तेज है:
In [14]: x = [tuple(np.random.randint(10, size=np.random.randint(10))) for i in range(10**4)]
In [15]: %timeit np.hstack(x)
10 loops, best of 3: 40.5 ms per loop
In [16]: %timeit np.concatenate(x)
100 loops, best of 3: 13.6 ms per loop
आप किसी भी numpy
उपयोग करने की आवश्यकता नहीं है, आप sum
उपयोग कर सकते हैं:
myList = [(9,), (1,), (1, 12), (9,), (8,)]
list(sum(myList,()))
परिणाम:
[9, 1, 1, 12, 9, 8]
यह वास्तव में numpy तरह नहीं दिखता है। – user2357112