线性模型的表到矩阵转换

时间:2017-08-04 03:23:50

标签: r matrix integer type-conversion typeof

我需要将一个名为'Abund'的3列表转换为矩阵。数据指定图,种类和丰度,并且是“整数”类型。我目前使用以下代码将表转换为矩阵:

AbundMat <- acast(Abund, plot~species, value.var="occurrence", fun.aggregate=length)

矩阵的类型为“整数”。在使用函数'manyglm'的后续分析中,我收到一条错误消息。当我将数据与示例数据集(我可以运行得很好)进行比较时,我注意到的唯一区别是示例矩阵的类型为“double”。我不确定这是否是导致错误消息的原因。如何将矩阵转换为'double'类型?

这是'Abund'文件的可重现子集:

structure(list(plot = structure(c(47L, 47L, 48L, 51L, 53L, 54L), .Label = c("A01", "A02", "A03", "A04", "A05", "A06", "A07", "A08", "A09", "A10", "A11", "A12", "A13", "A14", "A15", "A16", "A17", "A18", "A19", "A20", "A21", "A22", "A23", "A24", "A25", "A26", "A27", "A28", "A29", "A30", "A31", "A32", "A33", "A34", "A35", "A36", "A37", "A38", "A39", "A40", "A41", "A42", "A43", "A44", "A45", "A46", "A47", "A48", "A49", "B01", "B02", "B03", "B04", "B05", "B06", "B07", "B08", "B09", "B10", "B11", "B12", "B13", "B14", "B15", "B16", "B17", "B18", "B19", "B20", "B21", "B22", "B23", "B24", "B25", "B26", "B27", "B28", "B29", "B30", "B31", "B32", "B33", "B34", "B35", "B36", "B37", "B38", "B39", "B40", "B41", "B42", "B43", "B44", "B45", "C01", "C02", "C03", "C04", "C05", "C06", "C07", "C08", "C09", "C10", "C11", "C12", "C13", "C14", "C15", "C16", "C17", "C18", "C19", "C20", "C21", "C22", "C23", "C24", "C25", "C26", "C27", "C28", "C29", "C30", "C31", "C32", "C33", "C34", "C35", "C36", "C37", "C38", "C39", "C40", "C41", "C42", "C43", "C44", "C45"), class = "factor"), 
species = structure(c(46L, 47L, 47L, 47L, 47L, 47L), .Label = c("sp1", 
"sp10", "sp11", "sp12", "sp13", "sp14", "sp15", "sp16", "sp17", 
"sp18", "sp19", "sp2", "sp20", "sp21", "sp22", "sp23", "sp24", 
"sp25", "sp26", "sp27", "sp28", "sp29", "sp3", "sp30", "sp31", 
"sp32", "sp33", "sp34", "sp35", "sp36", "sp37", "sp38", "sp39", 
"sp4", "sp40", "sp41", "sp42", "sp43", "sp44", "sp45", "sp46", 
"sp47", "sp48", "sp49", "sp5", "sp50", "sp51", "sp52", "sp53", 
"sp54", "sp55", "sp56", "sp57", "sp58", "sp59", "sp6", "sp60", 
"sp61", "sp62", "sp7", "sp8", "sp9"), class = "factor"), 
occurrence = c(1L, 1L, 1L, 1L, 1L, 1L)), .Names = c("plot", "species", "occurrence"), row.names = c(NA, 6L), class = "data.frame")

非常感谢任何建议。

0 个答案:

没有答案