【问题标题】:Creating Plot from multiple columns从多列创建绘图
【发布时间】:2020-07-28 16:27:52
【问题描述】:

我正在尝试从多列创建图。数据框如下所示。正负应该是模型需要x的多个条形

数据框:

            Model Positive Negative
0            RNNs       99        1
1     Naive Bayes       22       38
2   Random Forest       51        9
3  SVM Classifier       40       20

任何帮助将不胜感激。非常感谢

【问题讨论】:

  • 你在寻找哪种情节?
  • @JonathanBesomi 感谢您的评论。一个条形图,其中一个图表中有这 4 个模型的 2 个条形

标签: python pandas dataframe matplotlib seaborn


【解决方案1】:

鉴于您的数据:

import pandas as pd
df = pd.DataFrame(data={'Model':['RNNs','Naive Bayes','Random Forest', 'SVM Classifier'], 
                        'Positive':[99,22,51,40], 
                        'Negative':[1,38,9,20]})

剧情:

df.set_index('Model')[['Positive','Negative']].plot.bar()

【讨论】:

  • 我想在一张图中分别显示 4 个模型结果的正负。谢谢
  • 你是这个意思吗?
【解决方案2】:

使用 seaborn 和 df.melt 的另一种方式

import pandas as pd
import seaborn as sns

df = pd.DataFrame(data={'Model':['RNNs','Naive Bayes','Random Forest', 'SVM Classifier'], 
                        'Positive':[99,22,51,40], 
                        'Negative':[1,38,9,20]})
df = df.melt('Model', var_name='cols',  value_name='vals')
g = sns.factorplot(x="Model", y="vals", hue='cols', data=df,kind='bar')
g.set_xticklabels(rotation=90)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-09
    • 2019-02-13
    • 1970-01-01
    • 2015-09-27
    • 1970-01-01
    相关资源
    最近更新 更多