首页 > 解决方案 > 根据其他列的设置条件绘制列数据

问题描述

在此处输入图像描述

该行包含大约 6000 个订单项。我正在尝试根据特定条件显示条形图。我正在尝试使用它对应用程序数据进行分类,[Severity,Immediate_Action,Response_code]这将为我提供可视化它的重要数据。当条件匹配时。我想Application在 x 或 y 轴上以条形图的形式绘制列。

到目前为止,我必须设置一个条件,但我不确定如何根据以下条件获取每个应用程序的 value_counts。

High_Alert = report[(report['Response_Code'] == 200) & (report['Severity'].isin(['High','Medium'])) & (report['Immediate_Action']== 'None')]

我不擅长熊猫仍在尝试学习,但我想知道我是否必须使用 groupby。

import pandas as pd
report = pd.read_csv('Test-Report.csv')
High_Alert = report[(report['Response_Code'] == 200) & (report['Severity'].isin(['High','Medium'])) & (report['Immediate_Action']== 'None')]
report.groupby['Application']

不知道如何调用中的条件groupby或者是否有任何其他方法可以做到这一点。针对每个应用程序绘制条形图。csv 中的给定应用程序集只有 7 个。我不确定这是否value_counts()可以工作。

标签: pythonpython-3.xpandasmatplotlib

解决方案


你可以使用seaborn图书馆

import pandas as pd

import seaborn as sns

report = pd.read_csv('Test-Report.csv') 

High_Alert = report[(report['Response_Code'] == 200) & (report['Severity'].isin(['High','Medium'])) & (report['Immediate_Action']== 'None')]

report = pd.read_csv('Test-Report.csv')

sns.countplot('Application',data=High_Alert) #here you can also use hue like hue = 'Severity'


推荐阅读