Вы, вероятно, видели, что кто-то использует dput
.dput
используется для публикации (обычно коротких) данных.Но обычно вы бы не создавали фрейм данных подобным образом.Обычно вы создаете его с помощью функции data.frame
.См. Ниже
> example_df <- data.frame(x=rnorm(3),y=rnorm(3))
> example_df
x y
1 0.2411880 0.6660809
2 -0.5222567 -0.2512656
3 0.3824853 -1.8420050
> dput(example_df)
structure(list(x = c(0.241188014013708, -0.522256746461544, 0.382485333260912
), y = c(0.666080872170054, -0.251265630627216, -1.84200501106852
)), .Names = c("x", "y"), row.names = c(NA, -3L), class = "data.frame")
Затем, если кто-то хочет «скопировать» ваш data.frame
, он просто должен выполнить следующее:
> copied_df <- structure(list(x = c(0.241188014013708, -0.522256746461544, 0.382485333260912
+ ), y = c(0.666080872170054, -0.251265630627216, -1.84200501106852
+ )), .Names = c("x", "y"), row.names = c(NA, -3L), class = "data.frame")
Я поставил «копировать» в кавычки, потому чтообратите внимание на следующее:
> identical(example_df,copied_df)
[1] FALSE
> all.equal(example_df,copied_df)
[1] TRUE
identical
приводит к значению false, потому что когда вы публикуете вывод dput
, часто числа округляются до определенного десятичного знака.