У меня есть список предварительно агрегированных кортежей:
[{'target_y_n': 0, 'value': 0.5, 'count':1000},{'target_y_n': 1, 'value': 1, 'count':10000}, ...]
Как я могу визуализировать распределения (https://seaborn.pydata.org/generated/seaborn.distplot.html) или получить частотные графики без повторного расширения агрегированного представления до k
копий каждого значения, но при этом максимально повторно используя существующие инструменты, такие как distplot, countplot
?
В R http://www.amitsharma.in/post/cumulative-distribution-plots-for-frequency-data-in-r/ выглядит многообещающе
На основе источника R это возможный ответ в python
df = pd.DataFrame([{'target_y_n': 0, 'value': 0.5, 'count':1000}, {'target_y_n': 0, 'value': 0.4, 'count':100},{'target_y_n': 1, 'value': 1, 'count':10000}, {'target_y_n': 1, 'value': 2, 'count':1000}])
df = df.sort_values(['target_y_n', 'value'])
display(df)
df['count_cum'] = df.groupby(['target_y_n'])['count'].cumsum()
display(df)
sns.lineplot(x='value',y='count_cum', drawstyle='steps-pre', data= df, hue='target_y_n')