Python 使用布尔值编写excel问题

Python 使用布尔值编写excel问题,python,excel,pandas,Python,Excel,Pandas,我有一个dataframe,其中一列有字符串值“True”或“False” 但是,使用pd.to_excel打开excel文件时,此列与常规EXE“TRUE”(逻辑)不同,将pandas中的“TRUE”与excel“TRUE”合并,返回FALSE。当我导出到CSV时,问题就解决了,但所有其他格式都消失了 有人知道如何解决这个问题吗 import pandas as pd d = {'col1': [1, 2], 'col2': [3, 4], 'col3': ['True','False']}

我有一个dataframe,其中一列有字符串值“True”或“False” 但是,使用pd.to_excel打开excel文件时,此列与常规EXE“TRUE”(逻辑)不同,将pandas中的“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”,然后将第3列(来自pandas)与刚才编写的True进行比较。这将是错误的


我的问题是:如何将数据从pandas导出到excel,并以与excel相同的格式保持“True”。

您可以在写入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')

尝试与代码共享示例。请执行我的代码。打开xlsx文件,在第4列中写入常规的“True”,然后将第3列(来自pandas)与刚才编写的True进行比较。这将是错误的。好吧,你的回答让我知道了模式代码中可能出现的错误。在某些情况下,我的数据是str,因此在导出到excel之前,我必须使用.astype(bool),这使得“True”等于excel“True”@Drac0。我没有键入
True
它应该是
'True'
。编辑。