Как присоединиться к 2-му панду и добавить обозначающий столбец соответствующего фрейма - PullRequest
0 голосов
/ 17 апреля 2020

Предположим, у меня есть 2 кадра данных

  1. Поддельные новости
  2. Реальные новости

И у них обоих есть похожие столбцы, такие как заголовок, тема, текст, дата

Теперь я хочу добавить эти два кадра данных в один и добавить дополнительный столбец
Validity, значение которого будет 1, если это реальные новости, и 0, если это фальшивка новости

1 Ответ

0 голосов
/ 17 апреля 2020

Предположим, что у вас есть 2 следующих источника данных:

  1. real_df :

              title         subject         text        date
    0  Real_title_1  Real_subject_1  Real_text_1  2020-03-01
    1  Real_title_2  Real_subject_2  Real_text_2  2020-03-03
    
  2. fake_df :

              title         subject         text        date
    0  Fake_title_1  Fake_subject_1  Fake_text_1  2020-03-04
    1  Fake_title_2  Fake_subject_2  Fake_text_2  2020-03-06
    

Чтобы объединить их с «метками происхождения», вы можете использовать:

df = pd.concat([real_df, fake_df], keys=[1, 0])

Результат (на данный момент):

            title         subject         text        date
1 0  Real_title_1  Real_subject_1  Real_text_1  2020-03-01
  1  Real_title_2  Real_subject_2  Real_text_2  2020-03-03
0 0  Fake_title_1  Fake_subject_1  Fake_text_1  2020-03-04
  1  Fake_title_2  Fake_subject_2  Fake_text_2  2020-03-06

, где метки происхождения находятся на верхнем уровне мультииндекса.

Чтобы превратить его в «обычный» столбец и дать ему нужное имя, выполните:

df = df.reset_index(level=0).reset_index(drop=True).rename(columns={'level_0': 'Validity'})

Теперь результат такой же, как у вас sh, а именно:

   Validity         title         subject         text        date
0         1  Real_title_1  Real_subject_1  Real_text_1  2020-03-01
1         1  Real_title_2  Real_subject_2  Real_text_2  2020-03-03
2         0  Fake_title_1  Fake_subject_1  Fake_text_1  2020-03-04
3         0  Fake_title_2  Fake_subject_2  Fake_text_2  2020-03-06
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...