Панды пишут в Excel проблему с логическими значениями - PullRequest
0 голосов
/ 27 ноября 2018

У меня есть фрейм данных, в котором один столбец имеет строковые значения "True" или "False", однако при использовании pd.to_excel открываемый файл с excel для этого столбца отличается от обычного, исключая "TRUE" (логический), скомпилируя "True" из пандс excel "True" возвращает FALSE.Проблема решается, когда я экспортирую в CSV, но все остальные форматирования исчезают.

Кто-нибудь знает, как решить эту проблему?

import pandas as pd
d = {'col1': [1, 2], 'col2': [3, 4], 'col3': ['True','False']}
df = pd.DataFrame(data=d)
writer = pd.ExcelWriter(r'H:\ExcelTest2.xlsx', engine = 'xlsxwriter')
df.to_excel(writer, index=False, sheet_name='Sheet1')
writer.save()

Пожалуйста, выполните мой код.откройте файл xlsx и в столбце 4 напишите обычное «True», затем сравните Column3 (из pandas) с «True», который вы только что написали.это будет False

Мой вопрос таков: как я могу экспортировать данные из панд в Excel и сохранять "True" в том же формате, что и в Excel.

1 Ответ

0 голосов
/ 27 ноября 2018

Вы можете преобразовать свои строки перед записью в Excel, как в следующем примере: импортировать панд как pd, импортировать numpy как np

df = pd.DataFrame({'A': ['True', 'False', 'True']})
df['A'].dtype
#dtype('O')

df['A'] = df['A'] == 'True'
df['A'].dtype
#dtype('bool')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...