Невозможно построить с помощью Seaborn

1

Привет, Мой набор данных выглядит следующим образом

username    switch_state    time    
abcd         sw-off         07:53:15 +05:00 
abcd         sw-on          07:53:15 +05:00

Теперь, используя это, мне нужно найти, что в определенный день, сколько раз в день срабатывает состояние переключателя, т.е. включается или выключается. Мой тестовый код приведен ниже

switch_off=df.loc[df['switch_state']=='sw-off']#only off switches
groupy_result=switch_off.groupby(['time','username']).count()['switch_state'].unstack#grouping the data on the base of time and username and finding the count on a given day. fair enough

результат этого предложения groupby дается как

print(groupy_result)
username  abcd
time             
05:08:35        3
07:53:15        3
07:58:40        1

Теперь, когда вы видите, что счетчик соединен в столбце времени. Мне нужно разделить их так, чтобы я мог построить его, используя график рассеяния на море. Мне нужно иметь значения x и y, которые в моем случае будут x = время, y = count. Пожалуйста, помогите мне в том, как я могу построить этот столбец.

'

Теги:
pandas
pandas-groupby
seaborn
scatter-plot

1 ответ

1
Лучший ответ

Вы можете попробовать следующее, чтобы получить данные как сам DataFrame

df = df.loc[df['switch_state']=='sw-off']
df['count'] = df.groupby(['username','time'])['username'].transform('count')

Две строки кода предоставят вам обновленный фрейм данных df, который добавит столбец с именем count.

df = df.drop_duplicates(subset=['username', 'time'], keep='first')

Вышеупомянутая строка удалит повторяющиеся строки. Затем вы можете построить df['time'] и df['count'].

plt.scatter(df['time'], df['count'])
  • 0
    пожалуйста, добавьте объяснение, так что ответ спасибо
  • 0
    abcd 07:53:15 3.0 abcd 07:53:15 3.0 это вывод, поскольку вы можете видеть, что время не группируется правильно, поскольку оно повторяется. Не думаете ли вы, что после оператора groupby должна быть только одна запись count для времени, например, обе строки должны были быть сгруппированы в один в abcd 07:53:15 3.0
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню