затем я собираюсь получить одну строку с этим и добавить новый столбец с именем столбца, временем и значением 15.
loc_OBL_ein = df.loc[5]
loc_OBL_ein.insert(1,'time',value=15)
то я получаю сообщение об ошибке. Объект "Серия" не имеет атрибута "вставить". Моя идея заключалась в том, чтобы преобразовать loc_OBL_ein в объект с такими же именами столбцов, как df. Как я могу это сделать? Или есть другой способ получить эту конкретную строку и сохранить формат объекта?
Спасибо, р






Кажется, вам нужны вложенные списки, чтобы получить строку в DataFrame из индекса 5:
df = pd.DataFrame({
'A':list('abcdef'),
'B':[4,5,4,5,5,4],
'C':[7,8,9,4,2,3],
'D':[1,3,5,7,1,0],
'E':[5,3,6,9,2,4],
'F':list('aaabbb')
})
print (df)
A B C D E F
0 a 4 7 1 5 a
1 b 5 8 3 3 a
2 c 4 9 5 6 a
3 d 5 4 7 9 b
4 e 5 2 1 2 b
5 f 4 3 0 4 b
loc_OBL_ein = df.loc[[5]]
loc_OBL_ein.insert(1,'time',value=15)
print (loc_OBL_ein)
A time B C D E F
5 f 15 4 3 0 4 b
@raffa_sa - да, при выборе [] вернул Series, при выборе [[]] вернул DataFrame. Также, если нужно несколько строк, используйте [[4,5]]
спасибо - не знаю как, но вы всегда получали правильные ответы на мои вопросы :)
разница между loc_OBL_ein = df.loc [5] и loc_OBL_ein = df.loc [[5]] в том, что если я использую два [[]], я получаю вложенный список? @jezrael