fork download
  1. df <- data.frame(
  2. A_gsr =c("2.752,2.752,2.752,2.752,2.752,2.752,2.752,2.911,2.911,3.555",
  3. "2.999,2.999,2.999,2.752,2.752,2.752,2.752"),
  4. B_gsr = c("1.34,1.34,1.34,1.55,1.55,1.55,1.55,1.55,1.55,1.55",
  5. "1.56,1.56,1.56,1.55,1.55,1.55,1.55,NA,NA,NA,NA,1.34,1.34,1.34"),
  6. C_gsr = c("NA,NA,NA,0.147,0.147,0.147,0.147,0.147,NA",
  7. "0.146,0.146,0.146,0.146,0.146,0.146,0.146,0.146,0.146,0.146")
  8. )
  9. lapply(df[,1:3], function(x) gsub("\\b(\\d+\\.\\d+|NA)(?:,\\1)+\\b", "\\1", x))
Success #stdin #stdout 0.22s 39644KB
stdin
Standard input is empty
stdout
$A_gsr
[1] "2.752,2.911,3.555" "2.999,2.752"      

$B_gsr
[1] "1.34,1.55"         "1.56,1.55,NA,1.34"

$C_gsr
[1] "NA,0.147,NA" "0.146"