python - 从 Python 中的 R Tibble 浮动的日期
问题描述
通过使用 API,我在 Python(使用 rpy2.objects)中检索了一个 Tibble(一个 R 对象),这是一个非常大的二维表。当我打印 Tibble 对象时,它包含一个日期格式为“YYYY-MM-DD”的列。当我在 Python 中获取日期时(只需通过索引 Tibble),它将转换为 5 位浮点数。例如,日期“2019-09-28”转换为浮点数 18167.0。我不确定如何将其转换回字符串日期(例如“YYYY-MM-DD”)。
有没有人有任何想法?我很乐意澄清我能做的任何事情:)
编辑:我在帮助下发现的答案如下
import pandas as pd
pd.to_datetime(18167.0,unit='d',origin='1970-01-01')
解决方案
如果Date
类转换为numeric
存储模式,我们可以使用as.Date
withorigin
as.Date(18167, origin = "1970-01-01")
#[1] "2019-09-28"
Date
存储方式为numeric
storage.mode(Sys.Date())
#[1] "double"
中python
,我们也可以做
from datetime import datetime, date, time
date.fromordinal(int(18167) + date(1970, 1, 1).toordinal()).strftime("%Y-%m-%d")
#'2019-09-28'
推荐阅读
- java - 仅通过 Google Java 库上的操作登录 Google 屏幕?
- qt - 如何让 QT creator 构建的应用程序在 macOS Mojave 上始终使用轻模式主题?
- javascript - 通过 For 循环创建 HTML 不能完全正常工作
- javascript - 为什么 Map 原型没有 `.map()` 函数?
- rust - FromStr 特征
- javascript - 在每个 forEach 语句之间添加等待
- c++ - 使用队列接收不一致的访问冲突
- php - CSS 和 JS 文件的 404 - Nginx 和 Laravel 在子目录中
- javascript - 如何在一个函数中获得多个 ajax 响应
- c# - 更改查询表达式创建后