R:两个结构相同的Excel文件在数据框架中返回不同的数据类型



我有两个不同的Excel文件,excel1excel2

我正在使用单独但相同的功能阅读它们:

df1<- readxl::read_xlsx("excel1.xlsx", sheet= "Ad Awareness", skip= 7)
df2<- readxl::read_xlsx("excel2.xlsx", sheet= "Ad Awareness", skip= 7)

然而,当我在每个上运行head()时,以下是df`返回的内容:

calDate             Score
<dttm>              <dbl>
1 2016-10-17 00:00:00  17.8
2 2016-10-18 00:00:00  17.2
3 2016-10-19 00:00:00  20.3

以下是df2返回的内容:

calDate Score
<dbl> <lgl>
1   43025 NA   
2   43026 NA   
3   43027 NA   

读取数据类型不同的原因是什么?这些文件没有什么不同。

read_xlsx()将根据您的数据猜测变量类型(有关更多信息,请参阅此处(。

所以你所描述的可能是由于:

  • 不同文件中的不同数据量(其中一个文件中没有足够的数据来进行正确的猜测(

  • 您可能在Excel中对单元格格式所做的更改(这些更改在Excel中并不总是显而易见(

如果看不到您的数据,很难给您更多的答案。

但是你可以用col_types参数来控制它:

col_types:要么为"NULL"以从电子表格中猜测全部,要么为字符向量,其中每列包含一个条目选项:"跳过"、"猜测"、"逻辑"、"数字"、"日期","文本"或"列表"。如果只指定了一个"col_type",则将被回收。跳过列中单元格的内容从不读取,并且该列不会出现在数据中帧输出。列表单元格将列加载为长度列表1个矢量,这些矢量使用"col_types=NULL",但以逐个单元格为基础。

最新更新