фрейм данных из серии или списка типов сглаженных столбцов - PullRequest
0 голосов
/ 08 октября 2019

Я хочу получить набор данных из моего начального набора данных, который выглядит следующим образом: *

time          details                  bis          as             go
01:20       {'direction': 'nord',      abc    {'a':12,'b':20 }     yes
                'label': 'one',
                'media': 'yes'}

01:25       {'direction': 'est',        def    {'a':2,'b':15 }     no
                'label': 'one',
                'media': 'no'}

желаемый результат:

time     direction     label     media      bis       a     b     go
01:20      nord         one       yes       abc       12    20     yes

01:25      est         one         no       def        2    15     no

Ответы [ 2 ]

1 голос
/ 08 октября 2019

Использование pd.DataFrame + pd.concat :

df1=pd.DataFrame(df['details'].tolist())
df2=pd.DataFrame(df['as'].tolist())
new_df=pd.concat([df[['time','bis','go']],df1,df2],axis=1)
print(new_df)

    time  bis   go direction label media   a   b
0  01:20  abc  yes      nord   one   yes  12  20
1  01:25  def   no       est   one    no   2  15
1 голос
/ 08 октября 2019

Использование pd.concat :

result = pd.concat([df[['time', 'bis', 'go']],
                    pd.DataFrame.from_records(df.details),
                    pd.DataFrame.from_records(df['as'])], axis=1)

print(result)

Вывод

    time  bis   go direction label media   a   b
0  01:20  abc  yes      nord   one   yes  12  20
1  01:25  def   no       est   one    no   2  15

Вы можете изменить порядок столбцов следующим образом:

result = result[['time', 'direction', 'label', 'media', 'bis', 'a', 'b', 'go']]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...