将数据导入R,将一些变量作为列表/向量导入



我有一些我想带入R的数据,但我不确定创建变量的最佳方法。基本上,我的变量就像:

    ItemName: "c34"
    Item Height: 170
    ItemX = list(0, 1, 2, 3, 5 )
    ItemY = list(50, 30, 20, 10, 5)
    (...)
    ItemName: "c36"
    Item Height: 180
    ItemX = list(0, 1, 2, 3, 5, 8 )
    ItemY = list(55.2, 30.1, 20, 10, 5, 0.1)

如果不是针对可变长度列表的两个变量,我将拥有一个带有具有列名称的数据框的解决方案:

["ItemName", "ItemHeight", "ItemX", "ItemY"] 

现在," itemx"one_answers" itemy"是可变长度列表/向量,什么是将其导入R的最佳方法,以便我可以执行简单的事情,例如为每个项目绘制Itemy vs. Itemx或进行回归项目〜timemx?

谢谢

gt

您可以尝试从不同角度查看数据,并使用Tidyr软件包和方法。这是R-Studio的一篇文章,更详细地解释了该方法:R-Studio:介绍Tidyr

您的数据格式将是看起来像这样的数据框架:

ItemName  ItemHeight   ItemX   ItemY
"c34"     170           0       50
"c34"     170           1       30

通过重复ItemName和ItemHeight列并为每个X,Y对添加一条新行,您可以拥有所有数据,而不会被不同数量的x,y对的数据挂起。

也许我会尝试将itemx和itemy读取为data.frame df中的字符串,然后评估每个元素:

df[, c("ItemX", "ItemY")] <- as.data.frame(apply(df[, c("ItemX", "ItemY")], 
                                                 1:2,
                                                 function(x) eval(parse(text = x))))

如果您有每个项目的列表长度不同...

是否会起作用...

希望它能以某种方式帮助!

最新更新