Как добавить строки с отсутствующими датами в правильном порядке фрейма данных? - PullRequest
0 голосов
/ 13 июля 2020

У меня есть DataFrame со столбцом «Дата» (формат, например, 2020-06-26). Тип этого столбца - str. Этот столбец отсортирован в порядке убывания: 2020-06-26, 2020-06-25, 2020-06-24 ... Другой столбец «Отзывы» состоит из текста. Есть повторяющиеся даты, поэтому в фрейме даты может быть несколько обзоров в заданную дату или без обзоров в другую дату. Я написал код, чтобы узнать, какие даты отсутствуют. У меня есть список (insert_dates) с 3 недостающими датами в формате %Y-%m-%d.

Когда я пытаюсь добавить эти 3 даты в свой фрейм данных df, ничего не меняется, Len (df) остается прежним. Вот что я просто сделал:

row = pd.Series([insert_dates[0],None], index=['Date', 'Review'])
row1 = pd.Series([insert_dates[1],None], index=['Date', 'Review'])
row2 = pd.Series([insert_dates[2],None], index=['Date', 'Review'])
df.append(row, ignore_index=True)
df.append(row1, ignore_index=True)
df.append(row2, ignore_index=True)
df.head()

Что мне делать?

1 Ответ

0 голосов
/ 13 июля 2020
  1. append не является операцией на месте.
  2. Вы можете отсортировать даты напрямую с помощью sort_values, если ваш формат даты YYYY-MM-DD. Для таких случаев, как даты начала дня, перед сортировкой следует использовать pd.to_datetime.
df = df.append([row, row1, row2], ignore_index=True)
df = df.sort_values(by='Date', ascending=False)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...