теоретическая база данных / запрос кодирования здесь - связанный с фреймом данных Python / Pandas.Я имею в виду до 50 тысяч строк в таблице, поэтому оптимальные решения кажутся ... ну, оптимальными.И я тоже не специалист по кодированию, так что терпите меня.
У меня есть таблица с уникальными строками пар дочерний код / страна, некоторые с соответствующими родительскими кодами. Например: 100100 *
Index | Parent | Child | Country | NewValue
0 | A | A-1 | X | Null
1 | A | A-1 | Y | Null
2 | A | A-2 | X | Null
3 | B | B-1 | X | Null
4 | B | B-2 | Y | Null
Мне нужно обновить каждую пару Родитель / Страна с вычисленным уникальным значением (NewValue).Каков наилучший подход к поиску и обновлению каждой пары в каждой строке?
До сих пор я генерирую отдельный список уникальных пар Родитель / Страна (чтобы избежать ненужного вычисления NewValue для каждой строки; я просто повторяю этот список, генерируя NewValue для каждой пары), например:
Parent | Country
A | X
A | Y
B | X
B | Y
Теперь, лучше ли просто выполнить поиск в первой таблице для каждого данного соответствия родителя / страны, получить индекс строки для любых совпадающих строк, а затем обновить с помощью индекса строки?
Или сгенерировать вторую таблицу так, чтобы в нее входили все соответствующие индексы, и использовать их для обновления первой таблицы?Например:
Parent | Country | Index(s)
A | X | 0,2
A | Y | 1
B | X | 3
B | Y | 4
Если 2, то как?Поскольку я использую df.unique () для генерации второй таблицы, я получаю только один индекс на пару, а не индексы отображения (и я не уверен, как они будут отображаться, если я это сделаю).И я не уверен, что в любом случае это особенно хорошо, но это лучшее, что я придумал за день: o)
Спасибо,
Кристофер / pepsi_max2k