2017-05-26 104 views
1

我想在R脚本中创建一个小型查找表,但似乎很难。如何在R脚本中创建小型查找表

lookup <- data.frame(
    item=c("aaaa","bbbb","dddd"), 
    price=c(1.00,2.50,3.65) 
) 
lookup 

上述作品真的很短名单,但已经在项目和价格越来越失准,如果我们增加了20个字符的描述,将很难再有。有没有一种简单的方法来调换它像

"Item", "Price", "Description" 
"aaaa", 1.00 , "A very nice set of aaas" 
"bbbb", 2.00 , "More expensive bbbs" 
... 
"zzzz", 26.00 , "Zese are the most costly" 
+0

将其保存为CSV文件,然后在需要时读入?另外,看看knitr :: kable包。例如:'kable(head(mtcars))' – zx8754

+0

您能否指定您的问题,您确定“转置”是您想要的吗?看起来不像它。 – jsb

+0

您正在使用像“lookup”和“transpose”这样的术语,它们在处理R中的数据问题时具有特定的含义。这很容易让人误解。此外,由于您没有提供背景或解释您的问题背后的原因,因此不清楚您后来的情况。 – Uwe

回答

3

也许是这样的:

lookup <- read.csv(text = ' 
"Item", "Price", "Description" 
"aaaa", 1.00 , "A very nice set of aaas" 
"bbbb", 2.00 , "More expensive bbbs" 
"zzzz", 26.00 , "Zese are the most costly" 
') 

这是更好地保持它作为CSV文件,然后使用read.csv()读入R,和要格式化输出使用knitr::kable()功能:

​​
+1

真棒 - 正是我想要的。请注意在最后一行之后留有空格。举个例子,如果你有'......最简单的代码'代码'作为最后一行,那么讨厌的空间被当作另一行输入,你会得到一个额外的行 – TonyS

+0

对不起 - 只是减价和时间的挂起因为编辑评论过期了......最后一行应该是'...最昂贵的'')'。 – TonyS