6

以下のスニペットのようなコードを使用して生成している一連のテーブルがあります。

```{r tables, echo=TRUE, eval=TRUE}
require(reshape2); require(pander)
data("mtcars")
data("AirPassengers")

dta_lst <- list(mtcars, AirPassengers)
for (i in 1:length(dta_lst)) {
    pander(melt(head(dta_lst[[i]], n = 2), varnames = c("Something"), 
            value.name = "Something else"), 
           caption = paste("Some table for: ", class(dta_lst[[i]])))
}
```

コードを実行すると、目的の出力が生成されます (当然、提供された例はほとんど意味がありません。適切なデータでは、適切な方法でデータを溶かします)。

---------------------------
 variable   Something else 
---------- ----------------
   mpg            21       

   mpg            21       

   cyl            6        

   cyl            6        

   disp          160       

   disp          160       

    hp           110       

    hp           110       

   drat          3.9       

   drat          3.9       

    wt           2.62      

    wt          2.875      

   qsec         16.46      

   qsec         17.02      

    vs            0        

    vs            0        

    am            1        

    am            1        

   gear           4        

   gear           4        

   carb           4        

   carb           4        
---------------------------

Table: Some table for:  data.frame


----------------
 Something else 
----------------
      112       

      118       
----------------

Table: Some table for:  ts

Rstudio でコードを編成しようとすると、パンダー テーブルが表示されません。

不在のテーブル

当然のことながら、ループがなくてもpanderコマンドは問題なく機能し、きれいに編まれた表が HTML ドキュメントに生成されます。

4

1 に答える 1

3

for ループでは、print(x)関数を使用しない限り「出力画面」はありません。

for (i in 1:4) { i } 何も表示されません

for (i in 1:4) {print(i)}数字 1 2 3 および 4 を表示します

解決策: FOR ループで (knitt を使用して) テーブルを作成し、それを変数に割り当てます。次に、関数を使用してこの変数を出力しprint()ます。覚えて。var テーブルの前後に空白行を追加する必要があります。内部で貼り付け機能を使用しますprint()

于 2015-10-18T06:36:14.800 に答える