我正在开发 R 编程项目..
我有一个数据帧(df),其中有大约790个观测值。我正在尝试从数据帧中提取某些行。与我尝试使用上面的行提取的行的唯一相似之处,它们都被命名为S_NAME:
例如,我想提取所有关注S_NAME的第4,7行和第10行
我不确定如何做到这一点,任何帮助都将非常感谢。我知道我已经标记了python,虽然该代码可能有助于我理解。
答案 0 :(得分:2)
我试试这个:
ktore <- which(df[, 2]=="S_NAME") # check in which row there is S_NAME
df[ktore+1, ] # extract rows which are after them
4 4 tin
7 7 foo
10 10 tinn
答案 1 :(得分:2)
你的意思是这样吗?
df <- data.frame(a=1:10, b=c("cat", "hat", "S_NAME", "fred", "joe", "S_NAME", "bob", "jeff", "S_NAME", "final"))
print(df)
df[which(df$b == "S_NAME")+1, ]
# to extract rows inbetween rows containing S_NAME:
S_NAME.inds <- which(df$b == "S_NAME")
rows <- 1:nrow(df)
df[df$b != "S_NAME" & rows > S_NAME.inds[1] & rows < S_NAME.inds[S_NAME.nums], ]