case_whenで返す値に列を選択するとエラーが出る

case_whenで返す値に列を指定したいことがあります。

image

しかし、列を指定した時に下記のようなエラーが出た場合、データタイプがcharacter型以外のfactor型やnumeric型になっている可能性があります。

Error : Problem with mutate() input Sales_replaced. :heavy_multiplication_x: must be a character vector, not a factor object. :information_source: Input Sales_replaced is case_when(...).

image

その場合、列を指定する際に下記の関数をご使用ください。

as.character(<列名>)

image

これにより、指定した列がcharacter型に変換されるため、エラーなく実行できます。

image