Разграничить датафреймы в пандах - PullRequest
0 голосов
/ 25 августа 2018

Привет! У меня есть датафрейм, который выглядит следующим образом:

Input

Name        |ID                                    |   Header3
Person 1    |(‘Data’,Date of Birth’,’xyz’,’Friend’)|    1

Ожидаемый результат

Name        |Type|Metric       |Code|Relation|Header3
Person 1    |Data|Date of Birth|xyz |Friend  |  1                                  

Код

df = pd.read_csv('Output.csv',header=[0,1,2,3], index_col = [1])
df.columns.name = 'ID'
df.index.name = 'Name'
df = df.drop(df.columns[0], axis=1)
df.reset_index()
ndf = df.stack(0
pdf = ndf.to_frame()
pdf.to_csv('Output.csv')

1 Ответ

0 голосов
/ 25 августа 2018

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

df = pd.DataFrame(data = [['Person 1', 
                     ('Data','Date of Birth','xyz','Friend'), 1]],
                      columns = ['Name','ID','Header3'])

tmp_df = df.ID.apply(pd.Series)
tmp_df.columns = ['Type', 'Metric', 'Code', 'Relation']

df = df.drop(['ID'], 1).join(tmp_df).reindex(['Name',
         'Type', 'Metric', 'Code', 'Relation', 'Header3'], axis=1)

Надеюсь, это поможет.

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