Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R中的逐列元素选择_R - Fatal编程技术网

R中的逐列元素选择

R中的逐列元素选择,r,R,我需要使用存储在向量中的行索引来选择数据帧的元素。换句话说,我有一个向量或长度等于数据帧中的列数,该向量包含元素的行号,我需要按顺序提取每列一个元素 我该怎么做呢 例如: vec我们可以使用: df[cbind(vec, 1:ncol(df))] #[1] 1 4 5 使用cbind,我们创建一个行和列索引,以从df中子集值 使用此矩阵,我们可以对第1行、第1列、第2行、第2列和第1行、第3列的值进行子集。我们可以使用: df[cbind(vec, 1:ncol(df))] #[1] 1 4

我需要使用存储在向量中的行索引来选择数据帧的元素。换句话说,我有一个向量或长度等于数据帧中的列数,该向量包含元素的行号,我需要按顺序提取每列一个元素

我该怎么做呢

例如:

vec我们可以使用:

df[cbind(vec, 1:ncol(df))]
#[1] 1 4 5
使用cbind,我们创建一个行和列索引,以从df中子集值

使用此矩阵,我们可以对第1行、第1列、第2行、第2列和第1行、第3列的值进行子集。我们可以使用:

df[cbind(vec, 1:ncol(df))]
#[1] 1 4 5
使用cbind,我们创建一个行和列索引,以从df中子集值


使用此矩阵,我们可以对第1行、第1列、第2行、第2列和第1行、第3列的值进行子集设置。

太棒了,谢谢!你介意解释一下它是如何工作的吗?是的,我不知道我们可以在矩阵/df中提供一组成对的值。我使用向量对进行了广泛的子集设置,而不是矩阵!谢谢,谢谢!你介意解释一下它是如何工作的吗?是的,我不知道我们可以在矩阵/df中提供一组成对的值。我使用向量对进行了广泛的子集设置,而不是矩阵!谢谢
cbind(vec, 1:ncol(df))
      vec  
#[1,]   1 1
#[2,]   2 2
#[3,]   1 3