[英]How to print all values in a vector except a vector with a certain name in R?
我正在尝试将向量中的所有值打印出来,除了具有特定名称的向量之外。
capital <- c("Prague","Kairo", "Seoul")
names(capital)<-c("Czech","Egypt","Korea")
是我的载体。
我想不使用循环就打印除“韩国”以外的所有内容。 我试过了:
capital[c("Czech","Egypt")]
产生正确的值,但是我不确定这是否是唯一的方法。
该代码应产生capital[c("Czech","Egypt")]
而没有任何循环。 我不确定这是否是唯一的方法,或者是否可以使用if语句产生相同的输出。
这是使用底数R的几个选项。
capital <- c("Prague","Kairo", "Seoul")
names(capital)<-c("Czech","Egypt","Korea")
capital[which(capital != "Seoul")]
select_caps <- c("Prague","Kairo")
capital[capital %in% select_caps]
或者,更直接地:
capital[capital %in% c("Prague","Kairo")]
无论哪种方式,您都会
Czech Egypt
"Prague" "Kairo"
您可以通过多种方式执行此操作。如果您知道要删除"Korea"
的名称的索引,则可以使用索引号。
capital <- c("Czech","Egypt","Korea")
capital[-3]
*记住向量索引号从1开始
或者您可以使用逻辑条件
capital <- c("Czech","Egypt","Korea")
capital[capital != "Korea"]
或使用%in%
运算符可以执行相同操作,
capital <- c("Czech","Egypt","Korea")
remove <- c("Egypt", "Korea")
capital[! capital %in% remove]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.