Uproszczony dput () w R
Tęsknię za sposobem dodawania danych do odpowiedzi SO w przejrzysty sposób. Moje doświadczenie jest takie, żestructure
obiekt zdput()
czasami mylą niedoświadczonych użytkowników. Nie mam jednak cierpliwości do kopiowania / wklejania go do prostej ramki danych za każdym razem i chciałbym ją zautomatyzować. Coś podobnego dodput()
, ale w uproszczonej wersji.
Powiedz, że przez kopiowanie / wklejanie, a niektóre inne mają takie dane,
Df <- data.frame(A = c(2, 2, 2, 6, 7, 8),
B = c("A", "G", "N", NA, "L", "L"),
C = c(1L, 3L, 5L, NA, NA, NA))
wygląda tak,
Df
#> A B C
#> 1 2 A 1
#> 2 2 G 3
#> 3 2 N 5
#> 4 6 <NA> NA
#> 5 7 L NA
#> 6 8 L NA
W obrębie jednej liczby całkowitej jeden czynnik i jeden wektor liczbowy,
str(Df)
#> 'data.frame': 6 obs. of 3 variables:
#> $ A: num 2 2 2 6 7 8
#> $ B: Factor w/ 4 levels "A","G","L","N": 1 2 4 NA 3 3
#> $ C: int 1 3 5 NA NA NA
Teraz chciałbym podzielić się tym z SO, ale nie zawsze mamoryginalny ramka danych, z której pochodzi. Częściej niż niepipe()
to w formie SO i jedyny sposób, jaki znam, aby go wydobyć, todput()
. Lubić,
dput(Df)
#> structure(list(A = c(2, 2, 2, 6, 7, 8), B = structure(c(1L, 2L,
#> 4L, NA, 3L, 3L), .Label = c("A", "G", "L", "N"), class = "factor"),
#> C = c(1L, 3L, 5L, NA, NA, NA)), .Names = c("A", "B", "C"), row.names = c(NA,
#> -6L), class = "data.frame")
ale, jak powiedziałem na górze, testructure
s może wyglądać dość myląco. Z tego powodu szukam sposobu na kompresjędput()
wyjście w jakiś sposób. Wyobrażam sobie wyjście, które wygląda mniej więcej tak
dput_small(Df)
#> data.frame(A = c(2, 2, 2, 6, 7, 8), B = c("A", "G", "N", NA, "L", "L"),
#> C = c(1L, 3L, 5L, NA, NA, NA))
Czy to jest możliwe? Zdaję sobie sprawę, że są inne klasylists
, tbl
, tbl_df
itd.