我在三类分类问题上使用OneVsRest分类器(三个随机森林).每个类的出现都是我的虚拟整数(1表示发生,0表示否则).我想知道是否有一种简单的替代方法来创建混淆矩阵?正如我遇到的所有方法一样,以y_pred,y_train = array,shape = [n_samples]的形式获取参数.理想情况下,我想要y_pred,y_train = array,shape = [n_samples,n_classes]
一些样本,类似于问题的结构:
y_train = np.array([(1,0,0), (1,0,0), (0,0,1), (1,0,0), (0,1,0)])
y_pred = np.array([(1,0,0), (0,1,0), (0,0,1), (0,1,0), (1,0,0)])
print(metrics.confusion_matrix(y_train, y_pred)
Run Code Online (Sandbox Code Playgroud)
退货:不支持多标签指标
一个关于程序员世界的快速问题.
数据.数据框列由名称组成.
g['NAME']=['John', 'Michael', 'Jezus', 'Donald', 'Suzy']
Run Code Online (Sandbox Code Playgroud)
期望的结果.另一个并行数据框列,由g ['NAME']中每个名称的字符数组成.
g['NAME_count'] = [4,7,5,6,4]
Run Code Online (Sandbox Code Playgroud)
先感谢您!
所以我遇到了另一个烦人的问题,这是我学习 Python 第一步的另一个障碍。
我有一个结果列,它有正/负/零值(赢、输、无承诺)。我想根据符号分为赢/输,零也将填充零,并在新的奖金列中填充负行;zeroes 将在新的损失列中填充零和正行。
数据。
g=pd.DataFrame({'OUTCOME':[100,-100,400,-200,-200,-750,-250,1000,0,100,-100]},index=[1,1,2,2,2,3,3,3,4,4,4])
Run Code Online (Sandbox Code Playgroud)
期望的输出。
g['WINNINGS']=[100,0,400,0,0,0,0,1000,0,100,0]
g['LOSS']=[0,100,0,200,200,750,250,0,0,0,100]
Run Code Online (Sandbox Code Playgroud)