Сдвиг заголовка столбца и значения столбца вниз на n строк - PullRequest
0 голосов
/ 18 октября 2019

Это мой набор данных, и моя стартовая строка - Имя и далее. Как поставить столбец бренда вместе с именем, адресом ... строкой? Я не могу опустить строку над начальной строкой, потому что она мне нужна для извлечения.

2        3      4      5      6       7     ...    Brand
A        B     nan    nan    nan     nan    ...     nike
Nan      B     nan    nan     C      nan    ...     nike
Nan      B     nan    nan     C      nan    ...     nike
AA       B     nan    nan     C      nan    ...     Adidas
Name  Address  Type   Size   Comment Grade  ...     Adidas
John    ggg    sports  8     Nil      A     ....    Adidas

Вот результат, который я хочу:

2        3      4      5      6       7     ...    
A        B     nan    nan    nan     nan    ...     
Nan      B     nan    nan     C      nan    ...     
Nan      B     nan    nan     C      nan    ...     
AA       B     nan    nan     C      nan    ...     
Name  Address  Type   Size   Comment Grade  ...     Brand
John    ggg    sports  8     Nil      A     ....    Nike
John    ggg    sports  9     Nil      B     ....    Nike
Mary    ggg    sports  6     Nil      A     ....    Adidas

1 Ответ

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

Вы можете использовать

df['Brand'] = df['Brand'].shift(df['2'].str.contains('Name').idxmax()+1)
df.at[df['2'].str.contains('Name').idxmax(), 'Brand'] = 'Brand'
print(df)

Выход

    2   3     4        5      6     7   ...     Brand
0   A   B   NaN     NaN     NaN     NaN     ...     NaN
1   Nan     B   NaN     NaN     C   NaN     ...     NaN
2   Nan     B   NaN     NaN     C   NaN     ...     NaN
3   AA  B   NaN     NaN     C   NaN     ...     NaN
4   Name    Address     Type    Size    Comment     Grade   ...     Brand
5   John    ggg     sports  8   Nil     A   ....    nike
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...