0
我有行的CSV文件看起來像以下:修改CSV以避免解析問題
2, 3, c(a, b, c), o, d
我想讀這個CSV但保留向量C(A,B,C)中的一列(變量)。我正在考慮閱讀我的CSV文件,並更改這些矢量中的分隔符(逗號)。當我讀到CSV文件(read.csv),它不會解析分離變量矢量
2, 3, c(a; b; c), o, d
這樣:比如我前面的向量更改爲以下。我想弄清楚我應該使用的正則表達式。
text <- "2, 3, c(a, b, c), o, d"
gsub("(c\\([a-z]?)(,)", "\\1;", text) #Something similar to this but as you could see I am struggling
的解決方案應爲下列情況下工作:
2, 3, c(a), o, d
2, 3, c(a, b), o, d
2, 3, c(a, b, c, d), o, d
我試圖使用GSUB將努力做到這一點R中,所以任何其他包放在一邊。
如果你真的堅持使用'''作爲矢量的分隔符,爲什麼不直接刪除空格,然後用','分割呢?對於您現有的設置,您可以使用這個'\ s *([^,] + \([^)] + \)| [^,] +)' – ctwheels
如果您要創建此CSV,請考慮使用雙引號,是轉義CSV的「標準」方式。 – bezet
你是怎麼得到一個看起來像這樣的CSV文件的?這可能是你應該解決的真正問題。 – MrFlick