2017-03-14 11 views
0

せずに大規模なデータセット内の列の値を変更する私は、大きなデータセットは、部分的に以下のようになります:どのように交換

m1 m2 m3 m4 
jp-1 1 2 3 
jp-2 2 9 8 
jp-4 2 4 4 
jp-8 3 2 1 
jp-7 1 4 4 
jp-9 2 4 0 
jp-3 2 4 4 
jp-6 3 1 5 
    ... 
    ... 
    ... 

あり、各列は約100000行があり、私は"jp-"を削除したいです列m1から。私はこの質問をオンラインでチェックしますが、ソリューションの多くは新しい値で列を置き換えることです。これは私が望むものではありません。私が欲しいのは、をm1から削除するだけです。

m1 m2 m3 m4 
1 1 2 3 
2 2 9 8 
4 2 4 4 
8 3 2 1 
7 1 4 4 
9 2 4 0 
3 2 4 4 
6 3 1 5 
    ... 
    ... 
    ... 
+3

'サブ("^JP- "、" "、df $ m1)' – thelatemail

+0

"解決策の多くは、私が欲しいものではない新しい値で列を置き換えることです。私が望むのは、m1から" jp- "を削除することです。 " - これはRで意味のある区別ではないと思います。 – Frank

答えて

3

あなたは接頭辞jp-を削除し、列の内容を上書きするsub機能を使用することができます。 dは、あなたのデータの場合:

d$m1 <- sub("jp-", "", d$m1) 

EDIT:

あなたはクラスnumericの列を作りたい場合は、あなたがas.numericを追加することができます。

d$m1 <- as.numeric(sub("jp-", "", d$m1)) 
+0

@sinQuesoありがとう、完璧に動作します! –

関連する問題