私は初めての関数 (他のプログラミング言語を含む) を書いていますがif
、else
との適切な構造について少し混乱していますifelse
。たくさんの例を検索しましたが、それほど明確なものはありません。
状況 - 私は、クライアントがクライアントであった期間によってクライアントを分類し、それを要因に変えようとしています。
#Sample Data
clientID <- round(runif(2,min=2000, max=3000),0)
MonthsSinceSignUp <- round(runif(20,min=1, max=60),0)
df <- data.frame(cbind(clientID,MonthsSinceSignUp))
特定のクライアントについて、その状態が 1 年未満か、1 年以上か、2 未満かなどを判断したいと思います。
これは関数での私の最初のクラックです:
ClientAgeRange <- function(MonthsSinceSignUp) {
if (MonthsSinceSignUp < 13) {ClientAgeRange <- '1 year'}
} else {
if (MonthsSinceSignUp > 13 & MonthsSinceSignUps < 25) {ClientAgeRange <- '2 years'}
} else {ClientAgeRage <- '3+ years'}
私が取得し続けるエラーは次
Error: unexpected '}' in "}"
のとおりです。これは、欠落しているか、余分な閉じ括弧があることを示します。しかし、トラブルシューティングを行っても、それを見つけることができません。しかし、一般的に、関数に正しい構造を適用していないと思います。を作成しようとしていif this, then set this variable as that
ます。この関数を適切に構成するにはどうすればよいですか?
最後に、関数の出力を に追加したい場合、正しい方法dataframe
はありますか?apply