Изменение индекса данных при добавлении - PullRequest
0 голосов
/ 03 февраля 2019

почему индексы информационного кадра превращаются в кортеж при добавлении к другому информационному фрейму в python?

import pandas as pd
data = {'birds': ['Cranes', 'Cranes', 'plovers', 'spoonbills', 
'spoonbills', 'Cranes', 'plovers', 'Cranes', 'spoonbills', 
'spoonbills'], 'age': [3.5, 4, 1.5, 'nan', 6, 3, 5.5, 'nan', 8, 4], ' 
 visits': [2, 4, 3, 4, 3, 4, 2, 2, 3, 2], 'priority': ['yes', 'yes', 
'no', 'yes', 'no', 'no', 'no', 'yes', 'no', 'no']}

labels = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']

df = pd.DataFrame(data,index=[(labels)])
mylist={'birds' :'penguin', 'age':'3' , 'visits' : 22,'priority':'yes'}
newdf=pd.DataFrame(mylist,index=['k'])
df=df.append(newdf)
df

1 Ответ

0 голосов
/ 03 февраля 2019

Вы выбрали мультииндекс для фрейма данных в качестве кортежей при создании фрейма данных

df = pd.DataFrame(data,index=[(labels)])

df.index

MultiIndex (level = [['a', 'b', 'c', 'd', 'e','f', 'g', 'h', 'i', 'j']], метки = [[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]])

Если вы не хотите иметь многоиндексный индекс кортежей, вы можете отключить его, назначив список индексов напрямую

import pandas as pd
data = {'birds': ['Cranes', 'Cranes', 'plovers', 'spoonbills', 'spoonbills', 'Cranes', 'plovers', 'Cranes', 'spoonbills', 'spoonbills'], 
        'age': [3.5, 4, 1.5, 'nan', 6, 3, 5.5, 'nan', 8, 4], 
        'visits': [2, 4, 3, 4, 3, 4, 2, 2, 3, 2], 
        'priority': ['yes', 'yes', 'no', 'yes', 'no', 'no', 'no', 'yes', 'no', 'no']}

labels = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']

df = pd.DataFrame(data,index=labels)
mylist={'birds' :'penguin', 'age':'3' , 'visits' : 22,'priority':'yes'}
newdf=pd.DataFrame(mylist,index=['k'])
df.append(newdf)

Out:

    age birds   priority    visits
a   3.5 Cranes  yes 2
b   4   Cranes  yes 4
c   1.5 plovers no  3
d   nan spoonbills  yes 4
e   6   spoonbills  no  3
f   3   Cranes  no  4
g   5.5 plovers no  2
h   nan Cranes  yes 2
i   8   spoonbills  no  3
j   4   spoonbills  no  2
k   3   penguin yes 22
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...