2017-09-04 75 views
1

下面示出了X的脚本,被存储在一个两列data.frame转换/结合2栏数据帧到1列dataframe-ř

a1 <- as.character(c(3456,2569)) 
a2 <- as.character(c(956,569)) 
a3 <- as.character(c(156,269)) 
mydf <- rbind(a1, a2, a3) 

如何可以存储它在一个data.frame Y数据其中一列的格式为“X,Y”,并为每个X和Y(字符)添加零。

所以输出将

"3456.000, 2569.000" 
"956.000, 569.000" 
"156.000, 269.000" 

回答

1

像这样的东西可以工作:根据您的矩阵的行

data.frame(col1 = apply(mydf, 1, function(x) paste(paste0(x, '.000'), collapse = ', '))) 
#     col1 
#a1 3456.000, 2569.000 
#a2 956.000, 569.000 
#a3 156.000, 269.000 

apply迭代,并且首先创建一个与零(这是paste0),然后数将所有内容合并成一个逗号分隔的字符串(即paste)。

1

是否所有的整数数量,或做一些他们已经有一个小数点?如果是后者,你可能想要做这样的事情

sprintf("%.3f, %.3f", as.numeric(mydf[,1]), as.numeric(mydf[,2]))