Tôi có một tập dữ liệu dài mà tôi muốn làm rộng và tôi tò mò nếu có cách để thực hiện điều này trong một bước bằng cách sử dụng gói định hình lại hoặc tidyr trong R.Tái định hình nhiều giá trị cùng một lúc
khung dữ liệu df
trông như thế này:
id type transactions amount
20 income 20 100
20 expense 25 95
30 income 50 300
30 expense 45 250
tôi muốn để có được điều này:
id income_transactions expense_transactions income_amount expense_amount
20 20 25 100 95
30 50 45 300 250
tôi biết tôi có thể nhận được một phần của con đường đó với reshape2 qua ví dụ:
dcast(df, id ~ type, value.var="transactions")
Nhưng có cách nào để định hình lại toàn bộ df trong một lần xử lý cả hai biến "giao dịch" và "số tiền" cùng một lúc không? Và lý tưởng với tên cột mới thích hợp hơn?
Câu trả lời tuyệt vời. Không biết rằng 'recast' tồn tại. Cảm ơn bạn! – Nikos
Cảm ơn Ananda! Câu trả lời hoàn hảo nếu tôi từng thấy một ... –
Đây là một câu trả lời hay (Enlightened + Huy hiệu câu trả lời hay trên đường đi ...), nhưng không chắc chắn chúng ta cần tất cả những mớ hỗn độn này với 'tidyr',' dplyr', 'data.table',' reshape' vv khi có một cách đơn giản để thực hiện nó với cơ sở R –