将值写入每行的括号中

Write values into brackets for each row

目前我的数据框如下:

       case_med   case_min  case_max
IL8    4.022518 -0.8826681 11.482423
VEGFA 10.118825  5.8325935 11.865825
CD8A  12.232512  3.9384582 15.873059
MCP3   1.483711 -0.4865190  4.882046
GDNF   1.773944 -0.9836022  4.774641
CDCP1  2.567742  0.3207944  6.024392

我想将每一行的格式转换为中位数(最小值,最大值),例如:

        case_med(case_min,case_max)
IL8    4.022518(-0.8826681,11.482423)
VEGFA 10.118825(5.8325935, 11.865825)
CD8A  12.232512(3.9384582,15.873059)
MCP3   1.483711(-0.4865190,4.882046)
GDNF   1.773944 (-0.9836022,4.774641)
CDCP1  2.567742(0.3207944,6.024392)

转换后,新数据框应该只有一列解释为“case_med(case_min,case_max)”。如何将其他两列的值组合到括号中并将它们存储在一列中?提前致谢!

您可以 paste() 列在一起(准确地说是 paste0()):

data.frame(case_med.min_max = paste0(df$case_med, "(", df$case_min, ",", df$case_max, ")"),
           row.names = rownames(df))

                    case_med.min_max
IL8   4.022518(-0.8826681,11.482423)
VEGFA 10.118825(5.8325935,11.865825)
CD8A  12.232512(3.9384582,15.873059)
MCP3    1.483711(-0.486519,4.882046)
GDNF   1.773944(-0.9836022,4.774641)
CDCP1   2.567742(0.3207944,6.024392)

数据:

df <- read.table(header = TRUE, text = "       case_med   case_min  case_max
IL8    4.022518 -0.8826681 11.482423
VEGFA 10.118825  5.8325935 11.865825
CD8A  12.232512  3.9384582 15.873059
MCP3   1.483711 -0.4865190  4.882046
GDNF   1.773944 -0.9836022  4.774641
CDCP1  2.567742  0.3207944  6.024392")