1
既存の変数から新しい変数を作成しようとしていて、それが条件を満たすとします。既存の変数から新しい変数を条件付きで作成する
startyear endyear ongoingasofyear imposition
(dbl) (dbl) (dbl) (dbl)
1 1945 1947 NA 1
2 1946 1949 NA 1
3 1946 1993 NA 1
4 1946 1960 NA 1
5 1946 1946 NA 1
6 1946 NA 1946 1
私はsanctions_periodという変数を作成します。私はそれが初年度から範囲内にあることを望みます - それらが利用可能な場合は期限が来てから、初年度の範囲 - 終了年度がNAで、継続中の期間がNAでない場合は継続します。
これは、それがどのように見えるかです:
startyear endyear ongoingasofyear imposition sanctions_period
(dbl) (dbl) (dbl) (dbl)
1 1945 1947 NA 1 1945-1947
2 1946 1949 NA 1 1946-1949
3 1946 1993 NA 1 1946-1993
4 1946 1960 NA 1 1946-1960
5 1946 1946 NA 1 1946-1946
6 1946 NA 1946 1 1946-ongoing
は、どのように私はこれをやって行くのでしょうか?私はifelseとは異なる設定を試みましたが、これまで成功していませんでした。ありがとう!
私のために働いた、ありがとう! –
endyearとongoingasofyearの両方がNAである場合、それを削除するにはどうすればいいですか? –
@ jo.magi次に、列を作成する前にデータセットを最初にサブセット化することができました。つまり、df1%>%filter(!(is.na(endyear)&is.na(ongoingasofyear))%>%mutate(sanctions_period = if_else(is.na(endyear)&!is.na(ongoingasofyear)、paste sep = " - ")、paste(startyear、endyear、sep = " - "))) ' – akrun