숫자가 아닌 수식을 기반으로 새 열을 만드는 방법에 대한 답을 많이 찾을 수있었습니다.이름 목록을 사용하여 수식을 기반으로 새 열 만들기
변수가 속하는 범주를 나타내는 새로운 열을 작성해야하는 녹은 데이터 프레임이 있습니다. 내가 많이 있기 때문에 새 열을 만들려면 다음을 사용하고 싶습니다 -
내가 작업 환경에 저장된 각각의 범주에 오는 변수 이름의 목록이Year Type variable value
1 2016 T Agrostis.canina 6
2 2016 R Agrostis.canina 2
3 2016 Q Agrostis.canina 0
4 2016 T Carex.nigra 0
5 2016 R Carex.nigra 9
6 2016 Q Carex.nigra 3
7 2015 T Agrostis.canina 0
8 2015 R Agrostis.canina 2
9 2015 Q Agrostis.canina 0
10 2015 T Carex.nigra 6
11 2015 R Carex.nigra 0
12 2015 Q Carex.nigra 5
: 이것은 내 현재 dataframe의 한 부분입니다 변수 이름! 이상적으로 dataframe은 다음과 같이 보일 것이다 :
Year Type variable value veg.type
1 2016 T Agrostis.canina 6 Graminoid
2 2016 R Agrostis.canina 2 Graminoid
3 2016 Q Agrostis.canina 0 Graminoid
4 2016 T Carex.nigra 0 Dwarf.shrub
5 2016 R Carex.nigra 9 Dwarf.shrub
6 2016 Q Carex.nigra 3 Dwarf.shrub
7 2015 T Agrostis.canina 0 Graminoid
8 2015 R Agrostis.canina 2 Graminoid
9 2015 Q Agrostis.canina 0 Graminoid
10 2015 T Carex.nigra 6 Dwarf.shrub
11 2015 R Carex.nigra 0 Dwarf.shrub
12 2015 Q Carex.nigra 5 Dwarf.shrub
나는 내에서 ifelse 사용하여 시도,하지만 난 아직 아무것도 작동하지 않았다 나는 그것의 핵심 부분을 누락 생각합니다.
미리 감사드립니다.
편집 : 각 veg.type은 기본적으로 다양한 변수 즉 하위 집합입니다. 등
Dwarf.shrub <- c("Calluna.vulgaris", "Empetrum.nigrum", "Erica.cinerea"...) Graminoid <- c("Agrostis.canina", "Deschampsia.flexuosa", "Holcus.lanatus"...)
는
이것은 내가 같은 veg.type에 나올 변수를 많이 할 것을 의미한다. 이것으로 조금 더 명확 해지기를 바랍니다.
데이터를 결합하는 데 사용하는 키가 있습니까? 기본 R 또는을 확인하십시오.dplyr의 left_join은 데이터 조작을 위해 가장 많이 제안합니다 –
어떤 기준으로 값을 veg.type 열에 할당하고 있습니까? –
각 veg.type 목록 아래에 변수가있는 목록 또는 데이터 프레임이 있습니다 (예 : ) Dwarf.shrub <- c ("Calluna.vulgaris", "Empetrum.nigrum", "Erica.cinerea"...) Graminoid <- c ("Agrostis.canina", "Deschampsia.flexuosa", "Holcus.lanatus"...) ' 등 각 veg.type 아래에 여러 개의 변수가 있습니다. 내가 보여 줬어. 'merge'와'left_join'은 내가해야 할 일을 위해 아래와 같이 작동하지 않습니다. – dunnns