私はRの初心者ですので、基本的な質問をご容赦ください。Rは、行と列の名前を繰り返しループするために入れ子になっています
私のデータの.csvにはa Dropbox linkがあります。
私は1990年から2010年のデータを国ごとに持っています。私のデータは幅が広い:各国は行で、毎年2つのデータソースに対応する2つの列があります。ただし、一部の国ではデータが完全ではありません。たとえば、ある国の行は1990-1995の列にNA値を持つことがあります。
2つの列を作成したいと思います。それぞれの国の行について、これらの列の値が、2つのデータ型のそれぞれの最初の非NA 値になるようにしたいと思います。
また、2つの他の列を作成したいと思います。各国の行については、これらの列の値を、2つのデータ型のそれぞれの最初の非NA 年にしたいと思います。
だから、最後の4つの列は以下のようになります。
ここ1990, 12, 1990, 87
1990, 7, 1990, 132
1996, 22, 1996, 173
1994, 14, 1994, 124
ようになり、私はループの入れ子のを想像して何で私のラフ半疑似コードの試みです:
for i in (number of rows){
for j in names(df){
if(is.na(df$j) == FALSE) df$earliest_year = j
}
}
方法は、これらの望ましい4列を生成できますか?ありがとう!
これは素晴らしいです!どうもありがとうございます!!非常に参考になる説明もあります。 – Jim