Задать вопрос
@Defensor_Alex
самообразовываюсь

Операции с pandas. Python. Есть ли возможность использовать массив индексов?

Есть два объекта DataFrame, в первом из них содержатся списки индексов строк другого. Как я могу без организации цикла For выбирать нужные строки за раз из второго объекта? В методе .loc не получается, выдаётся ошибка: Value Error: Cannot index with multidimensional key. Через цикл for вычисления 400000 строк растягиваются на 30 минут...

res_dat = []
for h in range(len(resultD)):
    res_dat.append(list((myteam.loc[resultD.iloc[h,:-1]])[['Name1', 'Name2', 'Name3', 'Name4']].sum()))
resultS = pd.DataFrame(res_dat)
  • Вопрос задан
  • 524 просмотра
Подписаться 1 Средний 1 комментарий
Пригласить эксперта
Ответы на вопрос 3
@dmshar
Мы конечно тут все немножко экстрасенсы и умеем не видя кода понимать, что и как вы делаете. Поэтому мы можем угадать, что вот такой конструкции у вас там нет
df.loc[df.index.isin(['one','two'])]
хотя по логике вещей должна быть.
Ответ написан
@o5a
С примером Вашего кода было бы понятнее, но вообще это можно сделать так:
df.loc[dfi['index']]
df - DF с данными
dfi - DF с индексами в колонке 'index'
Ответ написан
Комментировать
@Defensor_Alex Автор вопроса
самообразовываюсь
добавил свой код
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы