从列表中提取第一个值

时间:2014-01-06 12:38:37

标签: r

我想从此列表中提取第一个值:

[[1]]
 [1] " \" 0.0337302" " -0.000248016" " -0.000496032" " -0.000744048"
 [5] " -0.000992063" " -0.00124008"  " -0.0014881"   " -0.00173611" 
 [9] " -0.00198413"  " -0.00223214"  " -0.00248016"  " -0.00272817" 
[13] " -0.00297619"  " -0.00322421"  " -0.00347222"  " -0.00372024" 
[17] " -0.00396825"  " -0.00421627"  " -0.00446429"  " -0.0047123"  
[21] " -0.00496032"  " -0.00520833"  " -0.00545635"  " -0.00570437" 

此测试的名称为M,我已对此M[1]M[[1]]进行了测试,但我没有得到正确答案。 我怎么能这样做?

2 个答案:

答案 0 :(得分:13)

您需要对列表进行子集化,然后是列表中的向量:

M[[1]][1]

换句话说,M是1个元素的列表,一个长度为24的字符向量。

您可能希望使用unlist M将其转换为矢量。

M <- unlist(M)

然后你可以使用M[1]

要删除\",您可以使用sub

sub("\"","",M[1])
[1] "  0.0337302"

答案 1 :(得分:2)

您显示的列表中的第一个元素是

显示的整个向量
 [1] " \" 0.0337302" " -0.000248016" " -0.000496032" " -0.000744048"
 [5] " -0.000992063" " -0.00124008"  " -0.0014881"   " -0.00173611" 
 [9] " -0.00198413"  " -0.00223214"  " -0.00248016"  " -0.00272817" 
[13] " -0.00297619"  " -0.00322421"  " -0.00347222"  " -0.00372024" 
[17] " -0.00396825"  " -0.00421627"  " -0.00446429"  " -0.0047123"  
[21] " -0.00496032"  " -0.00520833"  " -0.00545635"  " -0.00570437" 

通过M[[1]]

获得该向量

要进一步获取此向量的第一个元素,只需要识别M [[1]]是您想要的第一个元素的向量,因此使用正态子集来获取该向量:M[[1]][1]

> M[[1]][1]
[1] " \" 0.0337302"