在一个变量中包含一些字符序列的子集行
Subset rows that contain some sequence of characters in one variable
我想对一个变量中具有具体字符序列的行进行子集化。
例如,我想对变量 history 中至少有三个连续 1(“111”;例如“01110”、“11111”、“01111”)的行进行子集化。
下面是一些示例数据:
id <- c(1,2,3,4,5,6,7,8,9,10)
history <- c("01110", "00001", "11111", "01111", "11011", "11100",
"00001", "10101", "11011", "10111")
(df <- data.frame(id, history))
# id history
# 1 1 01110
# 2 2 00001
# 3 3 11111
# 4 4 01111
# 5 5 11011
# 6 6 11100
# 7 7 00001
# 8 8 10101
# 9 9 11011
# 10 10 10111
在这种情况下,我想 select 第 1、3、4、6 和 10 行。
尝试
df[grep('1{3,}', df$history),]
我想对一个变量中具有具体字符序列的行进行子集化。
例如,我想对变量 history 中至少有三个连续 1(“111”;例如“01110”、“11111”、“01111”)的行进行子集化。
下面是一些示例数据:
id <- c(1,2,3,4,5,6,7,8,9,10)
history <- c("01110", "00001", "11111", "01111", "11011", "11100",
"00001", "10101", "11011", "10111")
(df <- data.frame(id, history))
# id history
# 1 1 01110
# 2 2 00001
# 3 3 11111
# 4 4 01111
# 5 5 11011
# 6 6 11100
# 7 7 00001
# 8 8 10101
# 9 9 11011
# 10 10 10111
在这种情况下,我想 select 第 1、3、4、6 和 10 行。
尝试
df[grep('1{3,}', df$history),]