data = c(1,2,3,4)
names = c("foo", "bar", "baz", "yak")
d = data.frame(data, row.names=names)
này trả về:Làm cách nào để sắp xếp một data.frame chỉ với một cột mà không làm mất các tên gọi?
data
foo 1
bar 2
baz 3
yak 4
Bây giờ, tôi muốn sắp xếp dataframe này bằng cách cột, mà không làm mất tên hàng kèm theo. Vì thế, kết quả tôi sẽ là:
data
yak 4
baz 3
bar 2
foo 1
Tôi đã thử như sau:
d[order(-d$data),]
, mà các khóa học chỉ cho tôi danh sách một chiều.arrange(d, desc(data))
từ góiplyr
, làm giảm tên hàng.Tìm hiểu các đơn đặt hàng với
o = order(-d$data)
, sau đó tái tạo lại khung vớidata.frame(d[o,], row.names=rownames(d)[o])
... mà vẫn còn lá tôi với tên cột sai.
Có cách nào để làm điều này không?
Ah, thú vị. Tôi bằng cách nào đó đã không tìm hiểu về điều này chỉ sau khi đọc từ khóa "thả" ở đây, mà bây giờ làm cho tôi nghĩ rằng liệu R rơi kích thước là một ý tưởng tốt hay không. Tôi sẽ đọc về điều đó. – slhck
Tôi nghĩ mọi người đã hỏi câu hỏi này. Sự đồng thuận của các vị thần R là mặc định này không tốt lắm, nhưng nó không thể thay đổi mà không có mã lỗi hiện tại. Sẽ được sửa chữa trong Q. –
Khi tôi sử dụng giải pháp này tôi lọc ra tất cả các hàng của tôi nhưng một. Làm sao chuyện này lại xảy ra? – Kory