оставьте лишние пробелы в отображении кадра данных панд в блокноте jupyter - PullRequest
2 голосов
/ 25 октября 2019

В блокноте jupyter лишние пробелы в кадре данных удаляются. Но иногда это не является предпочтительным, например,

df=pd.DataFrame({'A':['a   b','c'],'B':[1,2]})
df

Результат, который я получаю:

|   | A   | B |
|---|-----|---|
| 0 | a b | 1 |
| 1 | c   | 2 |

Но я хочу:

|   | A     | B |
|---|-------|---|
| 0 | a   b | 1 |
| 1 | c     | 2 |

Возможно ли это? Спасибо

1 Ответ

2 голосов
/ 25 октября 2019

На самом деле это HTML: панды покорно записывают все пробелы в HTML-разметку (формат интерфейса, используемый Jupyter Notebook). HTML по умолчанию объединяет несколько смежных пробелов в один. Используйте объект style, чтобы изменить это:

df.style.set_properties(**{'white-space': 'pre'})

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

def print_df(df):
    return df.style.set_properties(**{'white-space': 'pre'})

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