Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 保存日期时间单元格后,pandas无法很好地读取excel文件_Python_Excel_Pandas_Datetime_Openpyxl - Fatal编程技术网

Python 保存日期时间单元格后,pandas无法很好地读取excel文件

Python 保存日期时间单元格后,pandas无法很好地读取excel文件,python,excel,pandas,datetime,openpyxl,Python,Excel,Pandas,Datetime,Openpyxl,我正在用pandas read_excel读取一个文件 df0 = pd.read_excel(cfname,'Calendari', index_col=0, parse_cols='A:R', converters={'Categoria':str,'Fase':str, 'Grupo':str, 'Jornada':str, 'Partido':str, 'IdPartido':str,'Leido'

我正在用pandas read_excel读取一个文件

df0 = pd.read_excel(cfname,'Calendari', index_col=0, parse_cols='A:R',
            converters={'Categoria':str,'Fase':str, 'Grupo':str, 'Jornada':str,  
                               'Partido':str, 'IdPartido':str,'Leido':str})
df0.head()
输出为:

Linea Categoria Fase Grupo Jornada Partido IdPartido Leido Data                 Hora   
    2       CCM    1     1       1      -1       NaN    No Jornada 1            NaN  
    3       CCM    1     1       1       0       NaN    No Data                 Hora    
    4       CCM    1     1       1       1 CCM110101    No 2017-09-30 00:00:00  19:30:00  
    5       CCM    1     1       1       2 CCM110102    No 2017-09-30 00:00:00  17:45:00  
    6       CCM    1     1       1       3 CCM110103    No 2017-09-27 00:00:00  18:00:00
我用openpyxl写了一个新的日期:在第6行我写了2017-10-01

from openpyxl import load_workbook
wb = load_workbook(filename = cfname, keep_vba=True)
ws = wb.get_sheet_by_name('Calendari')
cell = ws['I6']
cell.value = datetime.strptime('01/10/2017', "%d/%m/%Y")
cell.number_format = 'dd/mm/yyyy'
wb.save(filename = cfname)
在Excel中,日期似乎保存得很好,采用了日期格式。但是当我尝试用pandas read_excel再次读取该文件时,数据已被更改 但是Jornada Partido IdPartido的值变为NaN

我不知道为什么。我尝试使用转换器,没有转换器,不同的日期格式。。。
请,有人能帮我吗?

如果您已经用openpyxl打开了一个文件,那么您可以使用内置实用程序将其转换为Pandas


由于这些值已经转换为Python对象,因此转换速度快且可靠。

I在完成测试之后。最终我发现,如果我用excel程序用python打开并保存excel文件,当我尝试用pandas再次读取该文件时,我已经不会出错

我什么都不懂。有些东西和你的关系不好

wb.save(filename = cfname)
这是因为我的Excel文件是宏xlxm?我打开它时:

wb = load_workbook(filename = cfname, keep_vba=True)

您的帖子中有一个语法错误,这一行ws=wb。get_sheet_by_name'Calendari'cell=ws['I6']这两个输出看起来完全相同。哪一列引起了问题?我用Pandas阅读了文件,它工作了。我有一个for循环可以穿过几排。如果需要,我会更改Partido比赛的日期。但下一次我用Pandas打开文件时,会丢失Jornada、Partido和IdPartido列的信息。当他们不跟熊猫一起看文件的时候,他们就变成了南特人。使用openpyxl读取和写入文件,并使用Pandas进行任何分析或更改。
wb = load_workbook(filename = cfname, keep_vba=True)