Để xóa một hoặc nhiều cột theo tên, khi tên cột được biết (trái ngược với việc được xác định tại thời điểm chạy), tôi thích subset()
cú pháp. Ví dụ cho khung dữ liệu
df <- data.frame(a=1:3, d=2:4, c=3:5, b=4:6)
để loại bỏ chỉ a
cột bạn có thể làm
Data <- subset( Data, select = -a )
và để loại bỏ các cột b
và d
bạn có thể làm
Data <- subset( Data, select = -c(d, b ) )
Bạn có thể xóa tất cả các cột giữa d
và b
với:
Data <- subset( Data, select = -c( d : b )
Như tôi đã nói ở trên, cú pháp này chỉ hoạt động khi biết tên cột. Nó sẽ không hoạt động khi nói tên cột được xác định theo chương trình (nghĩa là được gán cho một biến). Tôi sẽ sao chép Cảnh báo này từ ?subset
tài liệu:
Cảnh báo:
Đây là một chức năng tiện lợi dành cho sử dụng tương tác. Để lập trình, tốt hơn là sử dụng các hàm đặt lại tiêu chuẩn như '[' và đặc biệt là việc đánh giá không chuẩn đối với 'tập hợp con' có thể gây ra hậu quả không lường trước được.