Có cách nào để hiển thị cấu trúc bên trong hoàn thành của đối tượng R theo cách rõ ràng và dễ đọc không?Hiển thị cấu trúc bên trong của đối tượng R
Chức năng str
không chính xác thực hiện điều này vì nó thể hiện các đại diện tùy chỉnh. Ví dụ, áp dụng nó cho một đối tượng igraph cho một cái gì đó giống như
IGRAPH U--- 3 3 -- Full graph
+ attr: name (g/c), loops (g/x)
+ edges:
[1] 1--2 1--3 2--3
này là tốt đẹp và dễ đọc, nhưng nó đặc trưng cho igraph đối tượng (rõ ràng là nó sử dụng một định dạng tùy chỉnh cho họ). Tôi đang tìm một cái gì đó chung chung. Tôi tìm thấy dput
và trong một thời gian, tôi nghĩ rằng điều này cung cấp thông tin đầy đủ. Các đối tượng igraph cùng được hiển thị như
structure(list(3, FALSE, c(1, 2, 2), c(0, 0, 1), c(0, 1, 2),
c(0, 1, 2), c(0, 0, 1, 3), c(0, 2, 3, 3), list(c(1, 0, 1),
structure(list(name = "Full graph", loops = FALSE), .Names = c("name",
"loops")), list(), list())), class = "igraph")
Nhưng sau đó tôi đọc về pairlists trong Definition R Ngôn ngữ và tôi nhận thấy rằng dput(pairlist(1,2))
cho list(1,2)
. Thông tin mà chúng tôi đã bắt đầu với một danh sách ghép hình đã biến mất.
Vì vậy, có điều gì đó tương tự như dput
hiển thị cấu trúc bên trong của đối tượng R và cung cấp thông tin hoàn thành về thông tin này? (Lý do chính tôi muốn điều này là nó sẽ giúp tôi hiểu cấu trúc của các đối tượng R tốt hơn.)
Nếu không có, làm thế nào tôi sẽ truy vấn đối tượng R để có đủ thông tin về nó (trong một người có thể đọc được) cách --- không thể đọc được máy) để có thể tái tạo lại nó hoàn toàn?
Làm thế nào về '.internal (kiểm tra (foo)) '? –
Tôi nghĩ rằng 'dput' * là * những gì bạn muốn và ngoại lệ' pairlist' chỉ là - một ngoại lệ. Theo như tôi hiểu bạn không được phép sử dụng 'cặp đôi', do đó, vấn đề của' dput''ing nó là một chút tranh luận. – eddi
Cảm ơn bạn đã trả lời @eddi, tại sao bạn không đặt câu trả lời đó? – Szabolcs