#r #list #indexing
#r #Список #индексирование
Вопрос:
Итак, у меня есть этот df:
df <- read.csv("data_Marriages.csv")
И эти два списка взяты из df:
month_ins <- df$month_ins
city_ins <- df$city_ins
Что я хочу, так это удалить из обоих данных, относящихся к городу "Guayaquil"
, чтобы city_insc
было проще:
city_insc_NG <- city_insc[city_insc != "Guayaquil"]
поскольку этот список содержит названия городов, но он отличается, когда вы пытаетесь с month_ins
как я узнаю, какой из них принадлежит «Гуаякилю», а какой нет.
Итак, я попробовал с циклом for, и тоже не сработало:
j = 1
for( i in city_ins){
if(i == "Guayaquil"){
city_ins[i] <- NULL
month_ins[j] <- NULL
}
j = j 1
}
Итак… Как я могу удалить элементы в month_ins
по отношению к позициям в city_ins
, которые в нем занимают "Guayaquil"
?
Ответ №1:
Вы могли бы удалять значения из month_ins
аналогичным образом.
mont_ins_NG <- month_ins[city_insc != "Guayaquil"]
Или вместо подмножества вектора из фрейма данных :
month_ins <- df$month_ins[df$city_insc != "Guayaquil"]
Ответ №2:
Мы можем использовать with
month_ins <- with(df, month_ins[city_insc != "Guayaquil"])