1

csv からインポートする一連のデータがあります

info <- read.csv("test.csv")

これがどのように見えるかの例です

  name   type   purchase
1 mark   new    yes
2 steve  old    no
3 jim    old    yes
4 bill   new    yes

私がしたいこと:

purchase列をループして、すべてyesの を Trueに変更し、noを False に変更したいと考えています。次に、type列をループして、すべてを に変更oldcustomerます。

私はすべての異なる適用を台無しにしようとしましたが、それを機能させることができませんでした。また、このスレッドで一連のメソッドを試しました R の条件付き (`if`) ステートメントに基づいてデータ フレームの値を置き換えますが、まだ運がありません。

ヘルプやガイダンスをいただければ幸いです。

ありがとう、ニコ

4

1 に答える 1

5

within、基本的な文字置換、および文字等価性の基本的なテストを使用したアプローチを次に示します。

within(mydf, {
  type <- gsub("old", "customer", type)
  purchase <- purchase == "yes"
})
#    name     type purchase
# 1  mark      new     TRUE
# 2 steve customer    FALSE
# 3   jim customer     TRUE
# 4  bill      new     TRUE

以前はgsub「タイプ」を置き換えていましたが、他にも使用できるアプローチがあります (例: factorifelseなど)。

于 2013-09-14T04:25:46.213 に答える