Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/72.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,我试图对我的数据进行子集划分,但就我的一生而言,我无法理解为什么这不起作用。这里有一个指向我的数据的链接,它是一个csv文件。我尝试过这些方法来子集,但它们都只是创建一个没有观察的标题 alveolar.df <- combine.df[combine.df$articulation == "velar_coronal", ] alveolar.df <- subset(combine.df, articulation == "velar_coronal") alveolar.df

我试图对我的数据进行子集划分,但就我的一生而言,我无法理解为什么这不起作用。这里有一个指向我的数据的链接,它是一个csv文件。我尝试过这些方法来子集,但它们都只是创建一个没有观察的标题

alveolar.df <- combine.df[combine.df$articulation == "velar_coronal", ]
alveolar.df <- subset(combine.df, articulation == "velar_coronal")
alveolar.df <- combine.df[combine.df$articulation %in% c("velar_coronal"), ]

developer.df列中有额外的空格,这就是为什么从逻辑表达式中获得所有
FALSE
结果,因此子集中没有行。请注意下面每个字符串开头的额外空格

combine.df$articulation
# [1] " velar_coronal" " velar_labial"  " velar_coronal" " velar_coronal"
# [5] " velar_coronal" " velar_coronal"
combine.df$articulation == "velar_coronal"
# [1] FALSE FALSE FALSE FALSE FALSE FALSE
实际上,这个问题存在于多个专栏中。您可以执行以下两项操作之一:

  • 最初将数据读入R时使用
    strip.white=TRUE
    (假设您使用
    read.csv()
    read.table()

  • 使用base R中新的
    trimws()
    函数修剪列中多余的空白

    combine.df$articulation <- trimws(combine.df$articulation) 
    

    combine.df$articlation只需执行0.df%过滤器(articlation==“velar_coronal”)@MLavoie不幸的是,这只会返回大量NAs
    
    combine.df$articulation <- trimws(combine.df$articulation)