Tôi đã viết điều này để xóa tất cả các đối tượng ngoài các hàm khỏi môi trường hiện tại (Ngôn ngữ lập trình được sử dụng là R với IDE R-Studio):
remove_list=c() # create a vector
for(i in 1:NROW(ls())){ # repeat over all objects in environment
if(class(get(ls()[i]))!="function"){ # if object is *not* a function
remove_list=c(remove_list,ls()[i]) # ..add to vector remove_list
}
}
rm(list=remove_list) # remove all objects named in remove_list
Ghi chú-
Đối số "list" trong rm (list =) phải là một vector ký tự.
Tên của một đối tượng ở vị trí i của môi trường hiện tại được trả về từ ls () [i] và chính đối tượng đó từ get (ls () [i]). Do đó, lớp của một đối tượng được trả về từ lớp (get (ls () [i]))
rm(list=setdiff(ls(all.names=TRUE), lsf.str(all.names=TRUE)))