R logo

Markdownで簡単な表を書いて、

Cont_6h <- c("Cont_6h_1","Cont_6h_2","Cont_6h_3")
LPS_6h <- c("LPS_6h_1","LPS_6h_2","LPS_6h_3") plate_6h
<- data.frame(Cont_6h,LPS_6h) %>% t()
colnames(plate_6h) <- c("1","2","3")
knitr::kable(plate_6h, caption="LPS treatment (6h)" )

knitした時に、

the execution halted because of the Error in match.fun(FUN)' object 'spaces' not found Calls'...padwidth -> Vspaces -> unlist -> lapply -> match.fun.

となって止まった。

 

でも、チャンク内ではちゃんと動く。

⋯⋯何が悪いのか?

可能性1:functionやpackagesがない、もしくは古い

調べると、このようなエラーは、必要なfunctionやpackageがインストールされていない時に起こる事が多いらしい。

つまり、過去にインストールしていて記録に残っているからチャンク内では動くけど、knitするとfunctionやpackagesがないからエラーになると。

多いのは、 dplyrknitr

で、入れ直してみた。

library(dplyr)
library(knitr)

またpackagesが古い可能性もあるらしく、一度UPDATEしてみるとよいとも。

なので、アップデートもしてみた。

 



 

エラー変わらず。

可能性2:パイプで引っかかっている

パイプ%>%の後のt()が引っかかっている可能性もあるらしい。

なので、ちゃんと書き出してみる。

Cont_6h <- c("Cont_6h_1", "Cont_6h_2" , "Cont_6h_3" )
LPS_6h <- c("LPS_6h_1", "LPS_6h_2" , "LPS_6h_3" )
plate_6h <- t(data.frame(Cont_6h, LPS_6h))
colnames(plate_6h) <- c("1", "2" , "3" )

 



 

変わらず。

結局解決した方法:formatを指定

上記以外にも色々試してみたけど、最終的に解決した方法は、knitr::kableでformatをhtmlに指定したこと。

knitr::kable(plate_6h, caption = "LPS treatment (6h)", format = "html")

 



 

やれやれ。。。

にほんブログ村 子育てブログ ワーキングマザー育児へ