评估和更改列数据类型

已完成

当您从任何数据源导入表时,Power BI Desktop 将自动开始扫描前 1,000 行(默认设置)并尝试检测列中的数据类型。 Power BI Desktop 在某些情况下可能不会检测到正确的数据类型。 如果出现不正确的数据类型,您会遇到性能问题。

在处理平面文件时,例如逗号分隔值 (.CSV) 文件和 Excel 工作簿 (.XLSX),有很大的几率会遇到数据类型错误,因为数据是手动输入到工作表中的,因此会存在错误。 相反,在数据库中,数据类型是在创建表或视图时预定义的。

最佳做法是在将数据加载到 Power BI 语义模型中之前,在 Power Query 编辑器中评估列数据类型。 如果确定数据类型不正确,则可以进行更改。 可能还需要对列中的值应用某一格式,并且更改列的汇总默认设置。

为了继续对销售数据进行清理和转换以准备用于报告,现在需要评估列以确保它们拥有正确的数据类型。 您需要更正识别到的所有错误。

评估 OrderDate 列。 正如预期的那样,它包含数值数据,但 Power BI Desktop 错误地将列数据类型设置为“文本”。 若要对此列进行报告,需要将数据类型从“文本”更改为“日期”。

不正确的数据类型可能造成的影响

以下信息使您能够深入了解 Power BI 未检测到正确数据类型时可能引发的问题。

不正确的数据类型将阻止您创建某些计算、派生层次结构或创建与其他表的正确关系。 例如,如果尝试计算 Quantity of Orders YTD,您将遇到以下错误,指示 OrderDate 列数据类型不是进行基于时间的计算所需的日期。

Quantity of Orders YTD = TOTALYTD(SUM('Sales'[OrderQty]), 'Sales'[OrderDate])

对日期字段应用不正确的数据类型引发的另一个问题是,无法创建日期层次结构,此层次结构便于按年、月或周来分析数据。 以下屏幕截图显示 SalesDate 字段未识别为“日期”类型,并将仅作为表视觉对象中的日期列表显示。 但是,最佳做法是使用日期表并关闭自动日期/时间来移除自动生成的层次结构。 有关此流程的详细信息,请参阅自动生成的数据类型文档。

更改列数据类型

您可以在以下两个位置更改列的数据类型:在 Power Query 编辑器中和 Power BI Desktop 报表视图中通过使用列工具进行更改。 在加载数据之前,最好在 Power Query 编辑器中更改数据类型。

在 Power Query 编辑器中更改列数据类型

在 Power Query 编辑器中,您可以通过两种方式更改列数据类型。 一种方法是选择存在问题的列,在转换选项卡中选择数据类型,然后从列表中选择正确的数据类型。

另一种方法是选择列标头旁边的数据类型图标,然后从列表中选择正确的数据类型。

与在 Power Query 编辑器中所做的任何其他更改一样,对列数据类型进行的更改也将另存为编程步骤被保存。 此步骤称为更改类型,并且将在每次数据刷新时进行迭代。

完成清理和转换数据的所有步骤后,可以选择关闭并应用以关闭 Power Query 编辑器,并将更改应用到语义模型。 在此阶段,您的数据应该已调整好,可供分析和报告。

有关详细信息,请参阅 Power BI Desktop 中的数据类型