我使用的是人口普查局的数据,它提供了估计和误差幅度。它以Excel文件的形式下载,其中包含以下列名:
HC01_EST_VC01
HC01_MOE_VC01
HC02_EST_VC01
HC02_MOE_VC01
HC03_EST_VC01
HC03_MOE_VC01
HC01_EST_VC03
HC01_MOE_VC03
etc.一旦我将表读入R(使用read.csv),我如何删除/删除误差范围列(例如HC01_MOE_VC01, HC02_MOE_VC01)?我读过关于删除具有公共起始片段但不常见的名称内片段的列的内容。
我将非常感谢你的建议。谢谢!
发布于 2015-09-12 03:00:04
我们可以使用grep来设置不是“MOE”的列的子集。grepl的输出是一个逻辑向量。我们得到与模式_MOE_匹配的子串对应的TRUE值,如果不匹配,则得到FALSE。我们对它进行否定(!),这样TRUE就变成了FALSE,FALSE就变成了TRUE,所以所有没有_MOE_的列名都是TRUE。这可用于设置列的子集。
df1[!grepl('_MOE_', names(df1))]https://stackoverflow.com/questions/32530391
复制相似问题