【问题标题】:Changing data format from DataTime to general r将数据格式从 DateTime 更改为一般 r
【发布时间】:2019-01-30 22:17:43
【问题描述】:

我正在尝试从我拥有的一个 Excel 文件中提取数据。然而,R 将一些数据以 DateTime 格式而不是数字格式放置,即使 Excel 中的数据是数字(数据是自定义格式,并且在应用通用格式时似乎是数字)。我试图通过“as.numeric()”函数来改变它,但它没有用。上述任务使用的代码如下:

library(readxl)
l<-as.data.frame(read_excel(choose.files(),sheet=2,range="C6:BG123"))
vec1<-c("t",rep("n",ncol(l)-1))
#Changing columns to the appropriate format
for(j in 1:length(vec1)){
      if(vec1[j]=="t"){
        l[,j]<-as.character(l[,j])
      }else if(vec1[j]=="n"){
        l[,j]<-as.numeric(l[,j])
      }

此代码之后的最终输出是具有巨大数值的数据,而不是 Excel 中显示的实际数字。

excel数据可以在这里找到:https://www.england.nhs.uk/statistics/wp-content/uploads/sites/2/2019/01/20190110-NHS-111-MDS-time-series-to-December2018-1.xlsx

我想知道我错在哪里,如果它与 excel 中数据的初始格式有关,我如何在导入数据之前将 Excel 中的格式从 R 更改为“常规”。

【问题讨论】:

  • 你应该举一个你的输入/输出数据的例子
  • @Alexandregeorges 按要求提供数据源
  • 通过正确设置col_types-argument 来强制read_excel 读取正确的格式....此外,read_excel 已经产生了一个小标题,所以你可能不需要as.data.frame()
  • 工作表中没有数据 2。一些解决方案: - 使用 RStudio 中的“导入数据集”按钮(您可以在 UI 中修改格式) - 使用 col_types 参数作为Wimpel 建议 - 在输入数据中只保留您需要的行和列
  • @Wimpel 解决了这个问题。如果您将您的建议作为答案发布,我会接受。无论如何,非常感谢!

标签: r excel


【解决方案1】:

通过设置函数的col_types-argument 强制read_excel() 读取正确的格式。

【讨论】:

    猜你喜欢
    • 2013-03-14
    • 1970-01-01
    • 2013-02-13
    • 1970-01-01
    • 2018-06-15
    • 2020-04-13
    • 1970-01-01
    • 2022-01-16
    • 1970-01-01
    相关资源
    最近更新 更多