Как построить сводную диаграмму в Python?
В настоящее время я новичок в написании скриптов на Python. Я использую panda, pivottablejs для создания скриптов. У меня есть один CSV-файл, и я прочитал этот CSV-файл, используя Panda, и я получил таблицу, как это.
Теперь я хочу сгенерировать сводную диаграмму, используя pivottablejs, поэтому для этого мне нужно передать объект dataframe в pivot_ui();
Я хочу нанести на график в сводной диаграмме общее количество статусов проблем, созданных для каждой фазы происхождения.
Поэтому я попробовал что-то подобное.
LabelsReviewedByDate = issues_df.groupby(['Status','OriginationPhase'])
pivot_ui(LabelsReviewedByDate)
Я знаю, что это неправильно, но я новичок в написании скриптов на Python. Так что помогите мне найти решение.
Спасибо
2 ответа
Вы можете просто передать право на dataframe в pivot_ui:
import pandas as pd
from pivottablejs import pivot_ui
a= [ [1,'Requirements','bug'],[2,'Design','bug'],[3,'Testing','bug'],[4,'Requirements','bug'],[5,'Requirements','Inquiry'] ]
df = pd.DataFrame(a,columns =['Issue#','OriginationPhase','Category'])
pivot_ui(df)
Метод pivot_table решает эту проблему. Он работает как сводная таблица, но объединяет значения из строк с повторяющимися записями для указанных столбцов.
a= [ [1,'Requirements','bug'],[2,'Design','bug'],[3,'Testing','bug'],[4,'Requirements','bug'],[5,'Requirements','Inquiry'] ]
df = pd.DataFrame(a,columns =['Issue#','OriginationPhase','Category'])
df.pivot_table( index = 'Category',columns = 'OriginationPhase',aggfunc = lambda x: len(x) ) )
Issue#
OriginationPhase Design Requirements Testing
Category
Inquiry NaN 1 NaN
bug 1 2 1