修改 df R 中的分隔符值

问题描述

我需要修改以下df的col1和col2中的分隔符:

       col1                              col2           col3
12     7LOP                               no            Z;A
13     6WPS    I;J;K;M;O;P;Q;R;T;U;V;W;N;S;X          A;B;E
14     6WPT           F;G;IK;M;N;O;P;Q;R;J;D          A;B;C
15     7L0N                              G;I            E;F

我需要替换“;”用“,”,每个字母都需要有引号。所以例如第一行的 col3 应该变成 "Z","A"

我需要这样做,因为在我必须用 col3 中包含的每个元素构建一个向量之后。我正在循环工作,我有

 library(bio3d)
    files <- df$col1
    chain <- df$col3
    
    for (i in 1:length(files){
    pdb <- read.pdb(paste0(files[i],".pdb"))
    pdb <- atom.select(pdb,chain = c(## HERE I NEED TO PUT LETTERS CONTAINED IN col3))
    ...     #other stuff 
    }

我该怎么办?谢谢!

解决方法

如果你真的想添加引号,那么你可以这样做

lapply(df$col2,function(x){paste0('"',gsub(";",'","',x),'"')})

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...