R zoo对象不能同时包含因子向量和数值向量

R zoo对象不能同时包含因子向量和数值向量,r,zoo,R,Zoo,我在看动物园的常见问题,发现了一些让我惊讶的事情 “zoo”对象可以是(1)数字向量,(2)数字矩阵或 (3) 因子,但不能同时包含数值向量和因子 期望这种情况持续下去是否不合理?在zoo中无法实现这一点的原因是什么?基本上,我想把zoo对象看作是一个具有时间顺序的数据帧。zoo对象是一个具有索引属性的矩阵。因此,不能在zoo中混合类型的原因与不能在矩阵中混合类型的原因相同(即,矩阵只是一个具有暗淡属性的向量,不能在向量中混合类型)。您编写 基本上,我想把一个zoo对象想象成一个带有 时间顺序

我在看动物园的常见问题,发现了一些让我惊讶的事情

“zoo”对象可以是(1)数字向量,(2)数字矩阵或 (3) 因子,但不能同时包含数值向量和因子


期望这种情况持续下去是否不合理?在
zoo
中无法实现这一点的原因是什么?基本上,我想把
zoo
对象看作是一个具有时间顺序的数据帧。

zoo对象是一个具有索引属性的矩阵。因此,不能在zoo中混合类型的原因与不能在矩阵中混合类型的原因相同(即,矩阵只是一个具有暗淡属性的向量,不能在向量中混合类型)。

您编写

基本上,我想把一个zoo对象想象成一个带有 时间顺序

而你在这里简直是太离谱了。“独自许愿”并不能说明这一点。简而言之,
zoo
xts
可以处理数值矩阵(或作为特例的向量,两者实际上都是带/不带维度属性的向量),并且因子已经是一个延伸

zoo
存在的所有年份中,
data.frame
从来都不是受支持的数据类型,也永远不会是由于内部架构和实现选择。
data.frame
对象的性能也较差


<>但是你可以考虑<代码>数据>表<代码>作为替代。

你可以给我们看一些代码吗?比如,您如何创建zoo对象以及您希望如何创建一个?zoo旨在将R中的
“ts”
类概括为具有任意索引类的不规则间隔序列<代码>“ts”类也基于矩阵。坚持使用矩阵的原因之一是,在R中对矩阵的运算要比在data.frames上的运算快得多。如果您的非数字数据表示某种类型的ID,那么它们可能会以任何方式标识单独的序列。在这种情况下,
read.zoo
中的
split=
arg将处理该问题。解决方案包括每个类的单独对象、将因子转换为数值(并在其他地方维护级别信息)或使用其他表示形式。@G.Grothendieck感谢Gabor。你的答案正是我想要的那种背景。如果你回答了,我会记下来的。@G.Grothendieck提供的背景在动物园的小插曲中。@JoshuaUlrich谢谢。我一直在阅读所有的动物园文档,因为我期待在即将到来的项目中广泛使用它。我也会读这个小插曲。比我快十秒钟,但我会以冗长取胜;-)@DirkEddelbuettel:你总是在冗长上获胜。“期望这样做是不合理的吗?在
zoo
中无法实现这一点的原因是什么?”是的。但是如果你找到了一种方法,请随意发送一个补丁。你真的很有创意,这就是为什么你生来就有权问一个在r-help、r-sig-finance上被问了100多次的问题,所以。。。希望我们都能跳起来,再重复一遍,只为你,因为你是如此的特别。它是zoo(和xts)的核心。德克,恕我直言,你选择了回答一个非原创的问题。你可以省略所有不相关的内容,简洁地回答,甚至在评论空间中留下一个链接。我想我从来没有看到过用敌意和不尊重来回答问题的意义,所以R-list.Dirk的特点并不是要挖掘一个古老的问题,但是我在这个问题中问的正是Python
pandas.DataFrame
提供的混合
数据类型
数组,以及
索引
属性?不想挑起争论,只想在您可能熟悉
pandas.DataFrame
对象的范围内寻找您的意见。谢谢,一如既往。