3

私は以下のようなベクトルを持っています

vec <- c("abc\edw\www", "nmn\ggg", "rer\qqq\fdf"......)

以下のように、最初のスラッシュが発生したらすぐにすべてを削除したい

newvec <- c("abc","nmn","rer")

ありがとうございました。

私の元のベクトルは以下のとおりです(頭のみ)

[1] "peoria ave\nste \npeoria"                      [2]   "wood dr\nphoenix"                                  
"central ave\nphoenix"                            
[4] "southern ave\nphoenix"                         [5]   "happy valley rd\nste   
\nglendaleaz "               "the americana at brand\n americana way\nglendale"

ここで問題は、元の csv ファイルにバックスラッシュが含まれていないことですが、それを読むとバックスラッシュが表示されます。元のcsvファイルは以下の通り

[1] "peoria ave               [2] "wood dr
     nste                          nphoenix"       
     npeoria"

ご覧のとおり、実際には「ENTER」で区切られていますが、read.csv() を使用して R で読み取ると、バックスラッシュに置き換えられます。

4

3 に答える 3

4

別の解決策:

 sub("\\\\.*", "", x)
于 2013-06-19T09:28:44.930 に答える
1
vec <- c("abc\\edw\\www", "nmn\\ggg", "rer\\qqq\\fdf")
sub("([^\\\\])\\\\.*","\\1", vec)
[1] "abc" "nmn" "rer"
于 2013-06-19T09:25:36.183 に答える
1

strssplit(vec, "\\\\")仕事をするべきです。

最初の要素を選択するには[[1]][1]2番目[[1]][2]

于 2013-06-19T09:25:46.560 に答える