繁体   English   中英

错误:无法使用 RData 文件中的 pyreadr package 加载 python 中缺少值的时间变量

[英]Error: Unable to load time variables with missing values in python using pyreadr package from RData file

我想使用“.RData”文件中的数据执行一些 python 函数。 我正在使用'pyreadr' python package 。

这是 R 代码示例

library(data.table)

# Creating demo data frame
data <- data.table(x_time = c(Sys.time(),Sys.time()+1,Sys.time()+2))
data_missing <- data.table(x_time = c(Sys.time(),NA,NA))

# checking the classes
sapply(data,class)
sapply(data_missing,class)

# Storing the data in RData file 
save(data, file = "test_data.RData")
save(data_missing, file = "test_missing_data.RData")

我将它存储在不同文件中的原因是因为“test_data.RData”已成功加载到 python 中,但是“test_missing_data.RData”给出了错误。

这是 Python 代码

##  Working demo
# import pyreadr
# result=pyreadr.read_r('test_data.RData')
# data=result['data']
# data.dtypes
# print(data)

### Error in below 

import pyreadr
result=pyreadr.read_r('test_missing_data.RData') # Error 
data=result['data']
data.dtypes
print(data)

错误信息如下:

C:\Users\Pawan\AppData\Local\R-MINI~1\envs\R-RETI~1\lib\site-packages\pandas\core\tools\datetimes.py:530:RuntimeWarning:在乘法中遇到无效值arr, tz_parsed = tslib.array_with_unit_to_datetime(arg, unit, errors=errors)

当数据框中有 NA 值时会发生错误。 是否有其他方式在 python 中加载 RData 文件?

感谢您的时间和帮助。

这不是错误,而是警告,这意味着它可能不会影响您的结果。 运行您的 R 代码后,我可以毫无问题地读取 RData 文件,请注意 dataframe 的名称,您在代码中弄错了

import pyreadr
result=pyreadr.read_r('test_missing_data.RData') # No error, just warning
# Your data frame is called data_missing, not data, since you called like that in your R code,
# I think this is what you are doing wrong
# Check data.keys() to see what you have if you are not sure
data=result['data_missing']
data.dtypes
#x_time    datetime64[ns]                                                                                                                                                                              
#dtype: object
print(data)
#                       x_time                                                                                                                                                                       
#0 2022-08-03 09:37:55.963370752                                                                                                                                                                       
#1                           NaT                                                                                                                                                                       
#2                           NaT 

# Looks correct to me

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM