Hi! All,<div><br class="webkit-block-placeholder"></div><div>I have below strange behavior in numpy. Can anyone shed some light on this:</div><div><br class="webkit-block-placeholder"></div><div>I have an array with each item as a list object. You will get this when you use 
scipy.sparse</div><div><br class="webkit-block-placeholder"></div><div><div>In [369]: k</div><div>Out[369]: array([[0], [1], [2], [3], [4], [5], [6], [7], [8], [9]], dtype=object)</div><div><br class="webkit-block-placeholder">
</div><div><br class="webkit-block-placeholder"></div><div>Assigning value by using slicing is working </div><div>In [370]: k[0:3] = [[i+3] for i in range(3)]</div><div><br class="webkit-block-placeholder"></div><div>In [371]: k
</div><div>Out[371]: array([[3], [4], [5], [3], [4], [5], [6], [7], [8], [9]], dtype=object)</div><div><br class="webkit-block-placeholder"></div><div><br></div><div>But assigning value by using a list for slicing is NOT</div>
<div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div>In [374]: k[[0, 1,2]] = [[i+3] for i in range(3)]</div><div><br class="webkit-block-placeholder"></div><div>In [375]: k</div>
<div>Out[375]: array([3, 4, 5, [3], [4], [5], [6], [7], [8], [9]], dtype=object)</div><div><br class="webkit-block-placeholder"></div><div><br></div><div>You can see those list objects casted to integer. </div><div><br class="webkit-block-placeholder">
</div><div>Is this a bug or a feature? if I want to slice it with random index without casting it, what should I do? </div><br>-- <br>Gen-Nan Chen, Ph. D.<br>email: <a href="mailto:gnchen@gmail.com">gnchen@gmail.com</a>
</div>