在这里理解解析功能

时间:2017-10-24 16:03:50

标签: python parsing arguments

我用谷歌搜索了它,但不清楚函数parse在这里做了什么。至少,我不太明白。如果有人能为我澄清,我将不胜感激。

Data = pd.ExcelFile(filename[0])          
ncols = Data.book.sheet_by_index(0).ncols  #class book google it 
Data_df = Data.parse(0, converters={i : str for i in range(ncols-1)}, encoding="utf-8")

1 个答案:

答案 0 :(得分:0)

我认为所呈现的片段前面是

import pandas as pd

ExcelFile类描述为here, in the Pandas documentationExcelFile.parse函数是pd.read_excel周围的薄包装器; converters参数在最后一个链接中描述:

  

转换器 dict,默认None

     
      
  • 用于转换某些列中的值的函数的字典。键可以是整数或列标签,值是带有一个输入参数的函数,Excel单元格内容,并返回转换后的内容。
  •   

第2行中访问的book对象是xlrd包的一部分,panda包是sheet_by_index用于读取Excel文件的基础实现。它记录在herencols方法here(虽然这些只是按照您的预期执行); Sheet中的range(ncols-1)字段已记录为here,它只返回工作表中的列数,忽略尾随的空列。

简而言之,{i : str for i in range(ncols-1)}将生成除最后一列之外的所有列的索引,因此转换器字典CAMERA具有将除最后一列之外的每个列视为简单字符串的效果,而不是尝试解析每个单元格以确定其数据类型。