2016-09-28 66 views
-1

我是R新手,並嘗試使用R運行我目前在Excel中執行的報告。大多數的話題一直住在這裏對我很有幫助轉換Excel公式與R代碼,但是,我奮力生成代碼如下擅長if語句Excel如果陳述到R代碼

=IF(AND(G2="SEA",OR(F2="FCL",F2="BCN")),W2*40,IF(G2="AIR",X2/1000*66,"")) 
  • G柱對應於集裝箱/產品
  • ˚F列對應於傳輸模式
  • AI和AJ對應關聯到每個傳輸模式

感謝所有幫助卷。由於

這裏的

回答

0

我們可以做一個嵌套ifelse讀取數據集

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)) 

注後的鏈接data遠銷R:在這裏,我們指的是數字索引用於提取列作爲一個可重複沒有顯示例子。

+1

不知道爲什麼這是downvoted作爲'ifelse'是正確的功能 – vincentmajor

+0

謝謝akrun,我編輯的公式,所以它會看看原始數據。我嘗試運行您提供的公式似乎仍然遇到錯誤,TMR_Report $ Miles <-ifelse(TMR_Report [,7] ==「SEA」)&TMR_Report [,6]%in%c(「FCL」, 「BCN」), 錯誤:在「TMR_Report $ Miles <-ifelse(TMR_Report [,7] ==」SEA「)和TMR_Report [,6]%c(」FCL「,」BCN「 ),「 > TMR_Report [,23] * 40,ifelse(TMR_Report [,7] ==」AIR「,TMR_Report [,24]/1000 * 66,NA)) 錯誤:」TMR_Report [ ,23] * 40,「 – Chum

+0

@Roland同時顯示圖片將不會有幫助,因爲我無法從圖像複製您的數據。請使用'dput'來顯示一個可重複使用的小例子。 – akrun