【发布时间】:2021-11-19 02:51:18
【问题描述】:
我有一个这样的数据框:
>result
x y
1 82 10
2 82 90
3 82 10
4 82 50
5 82 10
6 82 50
7 82 10
8 6 7
9 6 7
10 6 7
11 6 7
12 3 7
13 3 7
14 2 7
我想使用cat 函数以标准格式打印数据框。我在这里使用了一个简单的条件。如果 x
apply(result, 1, function(x) {
if( x[1] < x[2]) cat(paste0( "(", x ,")\n" )) else cat(paste( "(", " " ,")\n" ))
})
>
( )
(82)
(90)
( )
( )
( )
( )
( )
(6)
(7)
(6)
(7)
(6)
(7)
(6)
(7)
(3)
(7)
(3)
(7)
(2)
(7)
我得到的是 (x) (y) 而不是 (x, y)。输出应该是这样的
( )
(82, 90)
( )
( )
( )
( )
( )
(6, 7)
(6, 7)
(6, 7)
(6, 7)
(3, 7)
(3, 7)
(2, 7)
--数据
structure(list(x = c(82L, 82L, 82L, 82L, 82L, 82L, 82L, 6L, 6L,
6L, 6L, 3L, 3L, 2L), y = c(10L, 90L, 10L, 50L, 10L, 50L, 10L,
7L, 7L, 7L, 7L, 7L, 7L, 7L)), class = "data.frame", row.names = c(NA,
-14L))
【问题讨论】: