Попытка изменить фрейм данных для загрузки в Google Big Query Table - PullRequest
0 голосов
/ 10 октября 2018

У меня есть данные, которые выглядят так:

Raw_Title   Custom_Field
Manager Ben
Manager Ron
Manager Liz
Severity    4 - Low
Severity    2 - High
Severity    1 - Urgent
Type of Dataset Private
Type of Dataset Public
Type of Dataset Public
Request Category    Company :: Add
Request Category    User :: Add User
Request Category    User :: Remove User
Incident Category   Pipeline :: Cloud
Incident Category   UI :: Other
Incident Category   UI :: Authentication
Platform Environment    Staging
Platform Environment    Development
Platform Environment    Production

Я пытаюсь преобразовать их в это:

Manager Severity    Type of Dataset Request Category    Incident Category   Platform Environment
Ben 4 - Low Private Company :: Add  Pipeline :: Cloud   Staging
Ron 2 - High    Public  User :: Add User    UI :: Other Development
Liz 1 - Urgent  Public  User :: Remove User UI :: Authentication    Production

Я думал, что решение будет таким:

df = pd.DataFrame(filtered_df, columns = ['Manager','Severity','Type of Dataset','Request Category  ','Incident Category','Platform Environment'])
print(df)

Однако это дает мне совершенно пустой фрейм данных !!

Все, что я хочу сделать, это взять 'Raw_Title' и переместить его из строк в столбцы, а затем перечислить точки данных в 'Custom_Field 'под каждым соответствующим' Raw_Title '.Как я могу это сделать?Мне нужно перевести его в этот формат, чтобы я мог экспортировать все в таблицу Google Big Query.Спасибо за взгляд.

1 Ответ

0 голосов
/ 11 октября 2018

Для этого можно использовать сводную диаграмму данных

Сводную диаграмму данных

import pandas as pd


df = pd.DataFrame({'Raw_Title': ['Manager','Manager','Manager','Severity','Severity','Severity',
                    'Type of Dataset','Type of Dataset','Type of Dataset',
                    'Request Category','Request Category','Request Category',
                    'Incident Category','Incident Category','Incident Category','Platform Environment',
                    'Platform Environment','Platform Environment'],
                   'Custom_Field': ['Ben','Ron','Liz',
                       '4 - Low','2 - High','1 - Urgent',
                       'Private','Public','Public','Company :: Add',
                       'User :: Add User','User :: Remove User',
                       'Pipeline :: Cloud','UI :: Other','UI :: Authentication',
                       'Staging','Development','Production']})

dfPivoted = df.pivot(columns='Raw_Title', values='Custom_Field')

В результирующем информационном кадре будут нулевые значения для каждого столбца, в котором строка не былаиметь тип данных этого столбца.Если у вас есть идентификатор, который связывает строки, используйте его для индекса (index =)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...