簡體   English   中英

我想將二進制 numpy.ndarray 轉換為列表列表 python?

[英]I want to convert a binary numpy.ndarray to a list of lists python?

您好,我需要將二進制“numpy.ndarray”轉換為列表列表,如下例所示:

Matrix:
[[  #   0  1  2  3  4]
 [  0   1  0  1  0  1]
 [  1   0  0  1  1  1]
 [  2   1  0  1  1  0]
 [  3   0  0  1  0  1]
 [  4   1  1  0  0  1]
 [  5   1  0  1  1  1]
 [  6   0  0  1  0  1]]

List:
[[0,2,4],[2,3,4],[0,2,3],[2,4],[0,1,4],[0,2,3,4],[2,4]]

提前謝謝

這是一個顯示解決方案的小例子

import numpy as np

x = np.array([[  0 , 1,  0 , 1 , 0 , 1],
              [  1 ,  0 , 0,  1 , 1,  1],
              [  2  , 1 , 0  ,1 , 1,  0],
              [  3 ,  0 , 0  ,1,  0 , 1],
              [  4 ,  1,  1 , 0 , 0 , 1],
              [  5 ,  1  ,0 , 1,  1  ,1],
              [  6 ,  0 , 0,  1 , 0 , 1]])

out = []
for row in x:
  out.extend([np.where(row[1:]==1)[0].tolist()])

print(out)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM