R中具有多个条件的data.frame索引

R中具有多个条件的data.frame索引,r,dataframe,indexing,conditional-statements,R,Dataframe,Indexing,Conditional Statements,我有一个data.frame,其中有几列: structure(list(Name = structure(c(2L, 2L, 2L, 2L, 2L, 2L, 2L, 10L, 10L, 10L, 10L, 10L, 10L, 10L, 11L, 11L, 11L, 11L, 11L, 11L ), .Label = c("AM24032017B6-Deci.bdf", "AM27032017B1-Deci.bdf", "AT07042017B6-Deci.bdf", "AT21042017

我有一个data.frame,其中有几列:

structure(list(Name = structure(c(2L, 2L, 2L, 2L, 2L, 2L, 2L, 
10L, 10L, 10L, 10L, 10L, 10L, 10L, 11L, 11L, 11L, 11L, 11L, 11L
), .Label = c("AM24032017B6-Deci.bdf", "AM27032017B1-Deci.bdf", 
"AT07042017B6-Deci.bdf", "AT21042017B1-Deci.bdf", "EL21042017B1-Deci.bdf", 
"EL21042017B6-Deci.bdf", "ES16052017B1-Deci.bdf", "ES16052017B6-Deci.bdf", 
"FG09052017B6-Deci.bdf", "FG18052017B1-Deci.bdf", "IG08052017B1-Deci.bdf", 
"IG08052017B6-Deci.bdf", "IN01052017B1-Deci.bdf", "IN27032017B6-Deci.bdf", 
"LD24042017B1-Deci.bdf", "LD24042017B6-Deci.bdf", "LL25042017B1-Deci.bdf", 
"LL25042017B6-Deci.bdf", "LR03052017B1-Deci.bdf", "LR04052017B6-Deci.bdf", 
"MG11042017B6-Deci.bdf", "MG19042017B1-Deci.bdf", "MO20032017B1-Deci.bdf", 
"MO28032017B6-Deci.bdf", "NH09052017B6-Deci.bdf", "RJ12042017B6-Deci.bdf", 
"RJ23032017B1-Deci.bdf", "SO06062017B1-Deci.bdf", "SO30052017B6-Deci.bdf", 
"VG02052017B6-Deci.bdf", "VG26042017B1-Deci.bdf", "YN01062017B6-Deci.bdf", 
"ZJ03052017B6-Deci.bdf", "ZJ11052017B1-Deci.bdf"), class = "factor"), 
    Channel = structure(c(36L, 37L, 35L, 2L, 5L, 1L, 41L, 36L, 
    37L, 35L, 2L, 5L, 1L, 41L, 36L, 37L, 35L, 2L, 5L, 1L), .Label = c("AF3", 
    "AF4", "AF7", "AF8", "AFz", "C1", "C2", "C3", "C4", "C5", 
    "C6", "CP1", "CP2", "CP3", "CP4", "CP5", "CP6", "CPz", "Cz", 
    "F1", "F2", "F3", "F4", "F5", "F6", "F7", "F8", "FC1", "FC2", 
    "FC3", "FC4", "FC5", "FC6", "FCz", "Fp1", "Fp2", "Fpz", "FT7", 
    "FT8", "Fz", "Pz", "T7", "T8", "TP7", "TP8"), class = "factor"), 
    EpochCountStd = c(519L, 519L, 519L, 519L, 519L, 519L, 519L, 
    538L, 538L, 538L, 538L, 538L, 538L, 538L, 564L, 564L, 564L, 
    564L, 564L, 564L), EpochCountDeviant = c(110L, 110L, 110L, 
    110L, 110L, 110L, 110L, 102L, 102L, 102L, 102L, 102L, 102L, 
    102L, 110L, 110L, 110L, 110L, 110L, 110L), ErpMinTime = c(99L, 
    390L, 102L, 390L, 104L, 103L, 379L, 332L, 346L, 345L, 332L, 
    325L, 318L, 158L, 5L, 1L, 1L, 1L, 1L, 97L), ErpMinVoltage = c(-2.6, 
    -2.5, -2.4, -3.2, -2.9, -3.2, -3, -3.8, -4, -4.9, -3.5, -3.7, 
    -3.9, -3.5, 0.3, 0.4, 0.5, 0.7, 0.5, 0.3), ErpMaxTime = c(229L, 
    226L, 230L, 224L, 225L, 224L, 205L, 42L, 43L, 65L, 20L, 9L, 
    42L, 13L, 280L, 275L, 274L, 270L, 278L, 285L), ErpMaxVoltage = c(4.9, 
    4.4, 3.3, 5, 4.7, 4.1, 6.6, 1.6, 1.7, 1.5, 1.3, 1.3, 1.5, 
    0.7, 8.6, 6.7, 6.9, 5.8, 5.6, 5.5), ErpMinAv = c(-2.4, -1, 
    -2.3, -1.4, -2.7, -2.9, -2.8, -3.8, -3.9, -4.7, -3.4, -3.7, 
    -3.8, -3.4, 0.4, 0.5, 0.6, 0.7, 0.6, 0.4), ErpMaxAv = c(4.7, 
    4.2, 3.1, 4.8, 4.6, 3.9, 6.4, 1.4, 1.6, 1.4, 1.2, 1.2, 1.4, 
    0.6, 8.4, 6.6, 6.7, 5.8, 5.6, 5.5), AvStd = c(1.62, 1.6, 
    1.65, 1.42, 1.33, 1.23, 0.7, 0.47, 0.21, -0.001, 0.66, 0.48, 
    0.22, 0.6, -0.14, -0.1, -0.04, -0.32, -0.33, -0.23), AvDev = c(1.77, 
    1.61, 1.34, 1.8, 1.55, 1.36, 1.8, 0.04, 0.35, 0.51, -0.15, 
    -0.18, -0.11, -0.8, 3.44, 2.51, 2.44, 2.53, 1.99, 1.73), 
    Diff = c(0.15, 0.008, -0.31, 0.38, 0.21, 0.13, 1.09, -0.43, 
    0.14, 0.51, -0.81, -0.67, -0.33, -1.4, 3.58, 2.61, 2.48, 
    2.85, 2.32, 1.95), Deviant = structure(c(1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L), .Label = c("SECONDE", "SPOLDE"), class = "factor")), .Names = c("Name", 
"Channel", "EpochCountStd", "EpochCountDeviant", "ErpMinTime", 
"ErpMinVoltage", "ErpMaxTime", "ErpMaxVoltage", "ErpMinAv", "ErpMaxAv", 
"AvStd", "AvDev", "Diff", "Deviant"), row.names = c(1L, 2L, 3L, 
5L, 6L, 7L, 9L, 37L, 38L, 39L, 41L, 42L, 43L, 45L, 46L, 47L, 
48L, 50L, 51L, 52L), class = "data.frame")
我想创建一个新的data.frame,它具有所有相同的列和行,但我想消除的特定行除外。我要消除的行取决于其中一列的值,该列名为
Channel

我现在知道如何在一个条件下做到这一点。例如,如果我想删除与列通道中的值“Fp2”对应的行,我会:

df_NoFp2 <- df[df$Channel != "Fp2",]

df_NoFp2您的多重条件和预期输出是什么?使用
&
,矢量版本的
&&
<例如,code>df[df$Channel!=“Fp2”和df$EpochCountStd>110L,]
您也可以使用%中的
%来检查变量的值是否在一组所需的值中,如
df[df$Channel%in%c(“Fp2”,“CP2”)&df$EpochCountStd>110L,]
@akrun我只想将同一列的不同值子集
频道
@谢谢,这真的很管用!它比我想要的更混乱,因为根据
Channel
列的值,我有将近30行要删除,但仍然有效。谢谢您的多重条件和预期输出是什么?使用
&
,矢量版本的
&
<例如,code>df[df$Channel!=“Fp2”和df$EpochCountStd>110L,]
您也可以使用%中的
%来检查变量的值是否在一组所需的值中,如
df[df$Channel%in%c(“Fp2”,“CP2”)&df$EpochCountStd>110L,]
@akrun我只想将同一列的不同值子集
频道
@谢谢,这真的很管用!它比我想要的更混乱,因为根据
Channel
列的值,我有将近30行要删除,但仍然有效。谢谢