Thursday, 15 May 2014

python - Look at elements in an array -


मेरे पास 4,1,2 आकार के दो सरणियां हैं

  array1 [[[[1 2.]] [[3. 4.]] [[5. 6.]] [[7. 8.]]] सरणी 2 [[[8. 4.]] [[7. 3.]] [[ 6. 2.]] [[5. 1.]]]  

मुझे उन्हें ऐसे सरणी में डाल देना होगा जो दिखता है

  विलय [[ [1. 2.]] [[3. 4.]] [[5. 6.]] [[7. 8.]] [[8. 4.]] [[7. 3.]] [[6 2.]] [[5. 1.]]]  

फिर मुझे कम से कम कॉलम 1 और कॉलम 2 को ढूंढना होगा। मुझे यह था, लेकिन ऐसा लगता नहीं लगता कि मुझे क्या लगता है कि यह होना चाहिए।

  मर्ज किए गए अर्रे = सम्बद्ध ((array1, array2), अक्ष = 1) x_min = np.amin (विलीन अर्रे [:, 0]) x_max = np.amax (विलय अरा [:, 0]) Y_min = np.amin (mergedArray [:, 1]) y_max = np.amax (विलीन अर्रे [:, 1])  

क्या ऐसा करने का एक बेहतर तरीका है?

मैं बाद में कोड को सरल रखने के लिए, पहले 'अतिरिक्त' आयाम को दूर करने के लिए परीक्षा लेता हूं।

सरणियों को प्रारंभ करें:

  & gt; & gt; & gt; Array1 = np.array ([[[1, 2]], [[3, 4]], [[5, 6]], [[7, 8]]]) & gt; & gt; & gt; सरणी 2 = एनपी। अर्रे ([[[8, 4]], [[7, 3]], [[6, 2]], [[5, 1]]]) & gt; & gt; & gt; सरणी 1 सरणी ([[[1, 2]], [[3, 4]], [[5, 6]], [[7, 8]]])  

सरल बनाएं सरणियाँ:

  & gt; & gt; & gt; Array1b = array1 [:, 0 ,:] & gt; & gt; & gt; Array2b = array2 [:, 0 ,:]> gt; & gt; & gt; Array1b सरणी ([[1, 2], [3, 4], [5, 6], [7, 8]])  

समाकलन और न्यूनतम / अधिकतम अब थोड़ा आसान है :

  & gt; & gt; & gt; मर्ज किए गए = np.concatenate ((array1b, array2b)) & gt; & gt; & gt; विलय की गई सरणी ([[1, 2], [3, 4], [5, 6], [7, 8], [8, 4], [7, 3], [6, 2], [5, 1] ]])> Gt; & gt; & gt; Np.amin (मर्ज किए गए, धुरी = 1) सरणी ([1, 3, 5, 7, 4, 3, 2, 1])  

क्या यह आपको वही देता है जो आपको चाहिए? < / P>


No comments:

Post a Comment