You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R使用jirAgileR获取JIRA数据时duedate返回双精度值如何解决

问题描述

使用jirAgileR库从JIRA拉取数据时,除duedate字段外其余日期字段均能正常返回标准日期格式,仅duedate返回18466.00、18473.00这类数值。
两类字段的唯一差异是:JIRA侧duedate为date类型,其余可正常解析的日期字段为datetime类型。

复现代码:

library(JirAgileR, quietly = T)
library(knitr, quietly = T)
library(dplyr, quietly = T)

if (is.null(JIRABaseURL)) JIRABaseURL
if (is.null(username)) username
if (is.null(password)) password

fields1<-get_jira_issues(domain = JIRABaseURL,
  username = username,
  password = password,
  jql_query = "project in('My Project')",
  fields = c('duedate', 'updateddate', 'components'), 
  maxResults = 50,
  verbose = FALSE,
  as.data.frame = TRUE)

上述代码中updateddate字段可正常返回正确格式的日期数据。

根因

jirAgileR内置的接口响应解析逻辑,仅对datetime类型字段做了日期类型转换,纯date类型的duedate未被覆盖转换规则,直接返回了接口返回的原始天数值——该值为距1970-01-01的累计天数,不是R语言识别的标准日期对象。

修复方法

拉取数据后手动转换duedate字段格式即可,不需要修改包源码,参考代码:

fields1 <- fields1 %>%
  mutate(duedate = as.Date(duedate, origin = "1970-01-01"))

转换完成后,duedate字段即为标准R日期格式,可直接用于筛选、计算等后续操作,取值与JIRA页面展示的截止日期完全一致。

内容的提问来源于stack exchange,提问作者Prateek

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 18:48:27