У меня в качестве примера приведен следующий фрейм данных.
df_test = pd.DataFrame(data=0, index=["green","yellow","red"], columns=["bear","dog","cat"])
У меня есть следующий словарь с ключами и значениями, которые совпадают или связаны с индексом и столбцами моего фрейма данных.
d = {"green":["bear","dog"], "yellow":["bear"], "red":["bear"]}
Я заполнил свой фрейм данных в соответствии с представленными ключами и значениями, используя:
for k, v in d.items():
for x in v:
df_test.loc[k, x] = 1
Моя проблема здесь в том, что фрейм данных и словарь, с которым я работаю, очень большие, и потребовалось слишком много времени для вычислений. Есть ли более эффективный способ сделать это? Может быть, перебирать строки в кадре данных вместо ключей и значений в словаре?