Повторяющиеся заголовки в for-l oop in Python - PullRequest
0 голосов
/ 31 марта 2020

У меня есть df:

          id    timestamp               data    Date
27001   27242   2020-01-01 09:07:21.277 19.5    2020-01-01
27002   27243   2020-01-01 09:07:21.377 19.0    2020-01-01
27581   27822   2020-01-02 07:53:05.173 19.5    2020-01-02

и for-l oop, генерирующие графики в пакете и таблицу в конце:

for date in df['Date'].unique():   
  df_date = df[df['Date'] == date]

  ...

  number = []
  ax.autoscale()    
  plt.title(date)

  number.append([date, np.count_nonzero(df2['events'][minLim:maxLim]) ])      

  df_number=pd.DataFrame(number,columns=['Date', 'Count'])

  display(df_number)

Я хочу получить вывод в таблице, но заголовок повторяется: enter image description here

Если я изменю отступ в двух последних строках:

for date in df['Date'].unique():   
  df_date = df[df['Date'] == date]

  ...

  number = []
  ax.autoscale()    
  plt.title(date)

  number.append([date, np.count_nonzero(df2['events'][minLim:maxLim]) ])      

df_number=pd.DataFrame(number,columns=['Date', 'Count'])

display(df_number)

, он вернется только последняя строка таблицы:

enter image description here

Как удалить повторяющиеся заголовки, но оставить верхний и заменить индексы, начиная с 1? Почему это происходит?

1 Ответ

0 голосов
/ 31 марта 2020

Вы генерируете новый фрейм данных на каждой итерации, попробуйте добавить их все вместе и отобразить один раз в конце:

# Initialize df_number
df_number = pd.DataFrame(columns=['Date', 'Count'])

for date in df['Date'].unique():   
  df_date = df[df['Date'] == date]

  ...

  number = []
  ax.autoscale()    
  plt.title(date)

  number.append([date, np.count_nonzero(df2['events'][minLim:maxLim]) ])      

  # Append the new data
  df_number=df_number.append(pd.DataFrame(number, columns=['Date', 'Count']))

# Display once
display(df_number)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...