如何在函数内显示数据框内容

时间:2014-01-25 15:55:41

标签: r function

我希望看到在创建数据帧之后在函数内创建的数据帧的内容。

假设数据框在函数中被称为df。如果我只包含一行代码:

df

我没有在控制台上显示任何内容。我会在函数外部获取数据帧内容的转储。

由于

4 个答案:

答案 0 :(得分:4)

在交互式会话中,当您键入对象的名称(如df)时,R使用适当的方法隐式prints()该对象。就好像你输入了print(df)一样,没有你真的需要输入所有这些额外的字符。

但是,有一些地方自动打印不活动

  • 正如您所发现的,这在功能中并不活跃,
  • 在循环中,例如forwhile等,
  • 当您提供脚本时。

在这种情况下,您需要明确print()一个对象。

这通常会使用 lattice ggplot2 绘图来吸引用户,这些图需要print()才能在设备上绘制。但是在一般情况下,用户永远不必明确地print()这些图来获取某些东西。

答案 1 :(得分:3)

您希望打印出来,因为当您在R的shell中键入对象的名称时,您可以将对象的表示形式有效地回显给您。在函数内部,除非您明确告诉R打印信息,否则不会发生这种情况。

如果print(df)不起作用,请查看缓冲输出,并确保它已关闭。

答案 2 :(得分:1)

当您在控制台中键入变量名并按Enter键时,R会默默地将该变量传递给print。为了从函数内部获得相同的效果,您需要显式打印。在你的情况下:

print(df)

答案 3 :(得分:0)

df <- data.frame(x = rpois(100,80))

print_me <- function(x){
  print(x)
}

print_me(df)