2016-09-28 2 views
-1

저는 R에 익숙하지 않고 R을 사용하여 현재 Excel에서 수행중인 보고서를 실행하려고합니다. 주제의 대부분은 여기 그러나, 나는 아래 문Excel if 문을 R 코드

=IF(AND(G2="SEA",OR(F2="FCL",F2="BCN")),W2*40,IF(G2="AIR",X2/1000*66,"")) 
  • G 열 컨테이너/제품에 해당하는 경우 Excel 용 코드를 생성하기 위해 고군분투하고, R 코드에 엑셀 수식을 번역 나에게 매우 도움이되었습니다
  • F 열은 모드
  • AI와 AJ는

모든 도움을 주셔서 감사합니다 각각의 전송 모드로 연결된 볼륨에 해당하는 트랜스 포트에 해당합니다. 여기

감사

우리는 중첩 된 ifelse을 할 수

답변

0

데이터 세트를

df1 <- read.csv("yourfile.csv", stringsAsFactors=FALSE) 
ifelse(df1[,7]=="SEA" & df1[,6] %in% c("FCL", "BCN"), 
     df1[,35]*40, ifelse(df1[,7]=="AIR", df1[,36]*66, NA)) 

참고를 읽은 후 R에 수출 data에 대한 링크입니다 : 여기에 우리가 재현으로 열을 추출하는 숫자 인덱스를 참조하는 예를 보여주지 않았다.

+1

이것이 왜'ifelse'가 올바른 함수인지 downvoted 모르겠다. – vincentmajor

+0

고맙다 akrun, 나는 원시 데이터를 볼 수 있도록 수식을 편집했다. 내가 제공 한 수식을 실행하려고 시도했습니다. % c에서 여전히 TMR_Report $ Miles <-ifelse (TMR_Report [, 7] == "SEA") 및 TMR_Report [, 6] % ("FCL" "BCN"), 오류 : % c ("FCL", "BCN")에있는 예기치 않은 ','TMR_Report $ Miles <), TMR_Report [, 23] * 40, ifelse (TMR_Report [, 7] == "AIR", TMR_Report [, 24]/1000 * 66, NA) 오류 : 예기치 않은 ','TMR_Report [ , 23] * 40, " – Chum

+0

@Roland 이미지에서 데이터를 복사 할 수 없으므로 이미지를 표시하는 데 도움이되지 않습니다. 작게 재현 할 수있는 예제를 보려면'dput '을 사용하십시오. – akrun