array变换,numpy问题

我用autokera做的预测,结果是这样的

array([[0.31852505],
       [0.2589858 ],
       [0.17356667],
       ...,
       [0.09872996],
       [0.1402545 ],
       [0.18514858]], dtype=float32)

我想把它变成可以带入roc_auc,需要变化他的形式如下:
[0.10538509 0.22688799 0.44460228 ... 0.10291654 0.17157434 0.14680019]

需要变为没有逗号这样的形式,请问怎么变换

该回答引用ChatGPT

您可以使用NumPy的flatten函数将数组扁平化成一维数组,并将其转换为Python列表。然后,您可以使用该列表作为输入来计算ROC AUC。

以下是实现这种转换的代码示例:


import numpy as np

# 将数组扁平化为一维数组,并将其转换为Python列表
predictions = np.array([[0.31852505],
                        [0.2589858 ],
                        [0.17356667],
                        ...,
                        [0.09872996],
                        [0.1402545 ],
                        [0.18514858]], dtype=np.float32)
predictions = predictions.flatten().tolist()

# 计算ROC AUC
from sklearn.metrics import roc_auc_score
y_true = [0, 1, 1, 0, 1, ...]  # 真实标签
roc_auc = roc_auc_score(y_true, predictions)

请注意,您需要将y_true替换为您的真实标签,以便计算正确的ROC AUC。