2015-02-17 69 views
2

您好我有一個來自dicember的數據框。我有一個成本(R類內的類)的列。R/Excel:以正確的格式輸出一列,以優於

當出口到Excel時,我必須把正確的格式(如金錢或數量)。但問題是,在Excel中我看到:170997.6 - 應該是:17,099.76。

當我申請格式「硬幣(西班牙語的Moneda)」,結果是:170,997.60(錯誤的總數)。

有沒有辦法從R中以正確的格式輸出這些數字?或者如何在Excel中正確執行此操作?

 date Mes   Goal Fuentes GoalsCompletions ad.cost 
1 2014-12-01 diciembre Vida Directo  0    0.00 
2 2014-12-01 diciembre Vida Campa�as  0    0.00 
3 2014-12-01 diciembre Vida Referencias 1    0.00 
4 2014-12-01 diciembre Vida SEO   1    0.00 
5 2014-12-01 diciembre Vida Email   0    0.00 
6 2014-12-01 diciembre Vida RRSS   3    48.39 
7 2014-12-01 diciembre Vida Adwords  3    726.70 
8 2014-12-02 diciembre Vida Directo  0    0.00 
9 2014-12-02 diciembre Vida Campa�as  2    36.79 
+0

你確定你有R中正確的數量?首先檢查R中的數據,然後導出爲'.csv'。 – User7598 2015-02-17 21:25:33

+0

@ User7598,數據是正確的。問題在於格式化時。在「,」之前應該只有2個數字,但在excel中,我會在「,」之前看到3個數字。我想知道它是否應該在R或Excel本身中執行。 – 2015-02-17 21:28:00

+0

如果數據在R中是正確的並且如果使用文本編輯器打開時是正確的,則聽起來像是excel中的問題。 – User7598 2015-02-17 21:29:32

回答

1

對於我以下(在R)工作:

數據

(I添加用於說明幾個不同的號碼)

df <- read.table(header=T, text='  date Mes   Goal Fuentes GoalsCompletions ad.cost 
1 2014-12-01 diciembre Vida Directo  0    0.00 
2 2014-12-01 diciembre Vida Campanas  0    0.00 
3 2014-12-01 diciembre Vida Referencias 1    17099.76 
4 2014-12-01 diciembre Vida SEO   1    1233.45 
5 2014-12-01 diciembre Vida Email   0    1000.00 
6 2014-12-01 diciembre Vida RRSS   3    48.39 
7 2014-12-01 diciembre Vida Adwords  3    726.70 
8 2014-12-02 diciembre Vida Directo  0    0.00 
9 2014-12-02 diciembre Vida Campanas  2    36.79') 

#formatting with prettyNum to show as you want 
df$ad.cost <- prettyNum(df$ad.cost, big.mark=',', scientific=F) 

#write xlsx with the write.xlsx function of the xlsx package 
library(xlsx) 
write.xlsx(df, 'test.xlsx') 

的輸出是作爲你希望它是(包括你在你的問題中引用的數字)。

(在Excel中列將是一個字符,它根據你正在嘗試做的,你可能需要轉換回數字)

enter image description here

+0

我把它轉換回來:''df $ ad.cost < - as.numeric(prettyNum(df $ ad.cost,big.mark =',',scientific = F))' – 2015-02-17 21:40:38

+0

''' prettyNum'函數是一個字符串,我假設你需要首先使用'gsub'去除逗號,然後使用'as.numeric'將它轉換回數字(但是如果你在R中工作的話)。你需要導出它作爲字符,雖然這樣的輸出在Excel中將是正確的。如果你輸出它作爲數字,那麼你可能會再次面臨同樣的問題。 – LyzandeR 2015-02-17 21:50:19

+0

好吧,生病嘗試,我需要與這些列進行數學運算..謝謝,LyzandeR 。 – 2015-02-17 21:54:05