여러분 중 한 분이 저를 도울 수 있기를 바랍니다. 저는이 작업을 여러 가지 방법으로 시도해 왔으며 올바른 대답을 찾지 못하는 것 같습니다. 저는 R에 상당히 익숙하지만 제가 가지고있는 데이터를 포맷팅하는 스크립트를 작성했습니다. 궁극적으로 데이터가 들어올 때마다이 스크립트를 매주 실행하고 싶습니다.해당 숫자/문자를 참조하는 데이터 프레임에 열을 추가하십시오.
많은 3 개국 (예 : GBR 또는 NLD 등). 내가 원하는 것은 품종 코드에 해당하는 국가 코드가있는 데이터에 새 열을 만드는 것입니다.
내가 겪고있는 문제 중 하나는 모든 숫자 (1 - 80)에 해당 국가 코드가있는 것은 아닙니다. 그래서 같은 유형이 아니기 때문에 벡터를 모두 만들 수는 없습니다.
관련 국가 코드가없는 경우 국가 코드를 번식 코드의 번호로 사용하고 싶습니다. 예를 들어, 번식 코드 6에는 연관된 국가가 없으므로 새 sire_country 열에서 관련 필드를 채우려면 "6"을 입력하십시오.
도움이 될만한 경우 사용하려는 스크립트를 아무 쓸모없이 추가했습니다!
# "Sire.Breed" is a column containing numerical breed codes in the data
frame: df
# sire_country is what I want the new column with the country codes in to be
called
# if there is no "Sire.ID" present, I want the field to remain blank - I
have used this function elsewhere and it work fine
내 데이터를 .csv 파일에서 읽어
. 불행히도 기밀이므로 게시 할 수 없습니다. 그러나 가상의 예는 다음과 같습니다#denoting country codes for breed codes 1-80 breed_country<-c("GBR", "GBR", "GBR", "GBR", "GBR", "6", "GBR", "8", "9", "10", "11", "GBR", "NZL", "GBR", "GBR", "16", "DNK", "18", "19", "GBR", "21", "GBR", "23", "24", "25", "26", "CHE", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "CZE", "44", "45", "IRL", "AUS", "POL", "DEU", "50", "51", "SWE", "DEU", "ESP", "55", "56", "57", "58", "SWE", "DEU", "DNK", "NZL", "NLD", "CAN", "USA", "66", "67", "68", "USA", "70", "FRA", "ITA", "FIN", "JEY", "GGY", "76", "NOR", "78", "79", "80") breed_id<-c("Sire.Breed") sire_country<-breed_country[breed_id] sire_country[is.na("Sire.ID")]<-"" #the output looks like sire_country [1] NA #when I add sire_country to my data frame, I get sire_country 1 <NA> 2 <NA> 3 <NA> 4 <NA> 5 <NA> 6 <NA> 7 <NA> 8 <NA> 9 <NA> 10 <NA> 11 <NA> 12 <NA> 13 <NA> 14 <NA> 15 <NA>
animal name breed Mother Father ID Company DOB 1 Alice 2 Vera Tom 123456789012 Heinz 12/05/2017 2 Kate 63 Lucy Jack 123456987147 Google 03/06/2017
이
은 그 때 나는 (이 경우 2, 63) 품종에 관한 국가 코드를 원하는 것 (I 테이블 더 미안를 포맷 할 수 없습니다) 끝 부분에 다음과 같이 덧붙여 야합니다.
animal name breed Mother Father ID Company DOB Country 1 Alice 2 Vera Tom 123456789012 Heinz 12/05/2017 GBR 2 Kate 63 Lucy Jack 123456987147 Google 03/06/2017 NLD
내가 잘못 입력 한 경우 사과합니다. 아직 배우고 있습니다. 도움을 주시면 감사하겠습니다.
감사합니다.
국가 코드 만 입력하지 않고 데이터도 입력하십시오. –
실제로 열이있는 데이터 구조로 시작하십시오. 나는. 'data.frame (code = 1:80, country = breed_country)'. 예상 출력을 시각적으로 표현 (수동으로 생성) 해주십시오. 그리고 80 줄은 과잉 공격이고, 10 줄은 요점을 파악하기에 충분합니다. –
'breed' 열과 새로 만들려는 열의 차이를 이해하는 데 어려움을 겪고 있습니다. 예를 들어 '품종'열과 원하는 열과 관련하여 여러 시나리오를 보여 주면 도움이 될 것입니다 (예 : '품종'의 어떤 종류의 값이 결과 열의 가치에 매핑되는지). –