2017-01-06 3 views
0

У меня есть MultiIndex pandas DataFrame и необходимо изменить индекс 0 значения. В текущем DataFrame есть MultiIndex, называемый (test, time).Как установить значения индекса в базе данных MultiIndex pandas DataFrame?

Как установить строку «Тест 4» (на верхнем уровне индекса) как некоторая другая строка?

Для дополнительных очков многие из моих DataFrames будут иметь более одного значения на уровне индекса test. Могу ли я использовать список имен для переименования более одного раза за раз?

Благодарим за помощь.

enter image description here

(отредактирован :) Мои данные:

test  time  force displacement minutes event 
'Test 4' 0.0000 .1202 0   0.00000 False 
'Test 4' 0.0012 .0901 0   0.00002 False 
'Test 4' 0.0018 .0901 0   0.00003 False 
'Test 4' 0.0030 .0901 0   0.00004 False 
'Test 4' 0.0042 .0901 0   0.00005 False 
'Test 5' 0.0000 .1203 0   0.00000 False 
'Test 5' 0.0012 .0901 0   0.00002 False 

с несколькими индексом установлен ['test', 'time']

ответ

2

Вы можете передать словарю rename переименовать конкретные значения в любом индексе.

df.rename(index={'Test4':'something else'}) 
+0

выберите этот ответ – piRSquared

3

Во-первых, не оставлять рис без данных?

Во-вторых:

df.index.set_levels(['Test4'], level=0, inplace=True) 
+0

Отлично. Извините за изображение. Я попробовал таблицу уценки, но, похоже, не выглядел рендерингом, поэтому не знал, как наилучшим образом показать данные в хорошо продуманном виде. Если есть вопрос где-то, где используется приличная разметка, пожалуйста, укажите мне, чтобы я мог посмотреть на разметку и узнать. Спасибо – blokeley

+1

@blokeley лучший способ предоставить код, который генерирует пример. Второй способ - вставить csv в вопрос. Ваш пример маленький, это можно было бы сделать легко. Без этого я даю вам жалкий ответ без подтвержденной демонстрации. – piRSquared

+0

Это не очень хорошо работает, если в индексе 'test' имеется более одного значения. –

Смежные вопросы