4

在将羽毛对象读入从 python 会话中取出的 R 时,我遇到了一个错误。

在蟒蛇中:

In [248]: import pandas as pd

In [249]: pd.DataFrame({'col': ['a','b','c']}).to_feather('strings_df.feather')

在 R 中:

> library(feather)
> df = read_feather('strings_df.feather')
Error in coldataFeather(x, i) : 
  RAW() can only be applied to a 'raw', not a 'list'

这与字符串作为对象存储在中的事实有关pandas.Series吗? 对这里发生的事情有任何想法吗?

会话信息:

R

R 版本 3.3.1 (2016-06-21) 平台:x86_64-apple-darwin13.4.0 (64-bit) 运行于:OS X 10.10.5 (Yosemite)

语言环境:[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

附加的基础包:[1] stats graphics grDevices utils
datasets methods base

其他附加包:[1] feather_0.3.0

通过命名空间加载(未附加):[1] assertthat_0.1 hms_0.2 tools_3.3.1 tibble_1.2 Rcpp_0.12.5

Python

'2.7.10(默认,2015 年 7 月 3 日,12:05:53)\n[GCC 4.2.1 兼容 Apple LLVM 6.1.0 (clang-602.0.53)]'

熊猫版本:'0.20.3'

Numpy 版本:'1.13.1'

4

1 回答 1

0

问题只是字符串列中的值应该是类型unicode,而不是类型str。以下按预期工作:

pd.DataFrame({'col': [u'a',u'b',u'c']}).to_feather('strings_df.feather')
于 2017-07-28T18:15:20.567 回答