Хороший подход для создания двоичных столбцов в реляционной базе данных? - PullRequest
0 голосов
/ 03 июня 2019

Я строю основную таблицу, которая должна содержать несколько двоичных столбцов в зависимости от данных из других таблиц.Позвольте мне показать пример: главная таблица как: дата |column_a |column_b |column_c |binarycolumn_a | ...

Другая таблица выглядит так: date |column_z.

Таким образом, главная цель здесь - заполнить двоичную колонку_a значением 1, если дата из основной таблицы находится в другой таблице, а в противном случае - 0.

Я написал код для библиотеки панд, состоящий изв сравнении дат из мастер-таблицы и другой таблицы, но мастер-таблица настолько велика, что для ее завершения требуется вечность.Я ищу хороший подход к решению этой проблемы, потому что я полностью потерян.

Заранее спасибо.

1 Ответ

0 голосов
/ 03 июня 2019

Как правильно указали anky_91 и ALFAFA, ответ для сравнения столбцов:

df1['binarycolumn_a']=df1['date'].isin(df2['date]).astype(int)

Для двоих (или более) это:

df1['binarycolumn_a']=(df1['date'].isin(df2['date']) & 
df1['col_a'].isin(df2['col_z'])).astype(int)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...