R data.frame结果说明

时间:2016-10-10 05:29:34

标签: r list dataframe

我有3个向量:MRIMRI_highMRI_low_low_high的长度是第一个的一半。我的目标是将它们放在一个相同的元素中,这样我就可以进行迭代(我有一堆矢量遵循相同的格式)

当我写道:data.entry(MRI, MRI_high, MRI_low)弹出一个窗口,我的数据排列成列并且长度正确,问题,我无法使用它。 当我使用MRI_vector <- data.frame(MRI, MRI_high, MRI_low)时,函数通过复制较短的列表以某种方式给了我3个相等长度的元素。

这是什么解决方案?数据框的元素需要相同的长度吗?

此外,我尝试使用列表,但我的值不是数值

2 个答案:

答案 0 :(得分:0)

一种选择是将它们放在list中并使用NA填充以使length s相等,然后转换为&data; frame.frame&#39;

lst <- mget(ls(pattern = "MRI.*"))
df1 <- data.frame(lapply(lst, `length<-`, max(lengths(lst))))

答案 1 :(得分:0)

我找到了解决问题的方法:

我使用了这个列表,然而,在计算统计数据时我使用as.numeric(unlist())仍允许我迭代。

虽然对此有任何进一步的评论,但我还是要理解这种奇怪的数据框架行为!