我有這樣一個數據幀:Boxplox數據幀
2015 | 2016 | 2017
-----+------+------
1.2 | 5.2 | 5.6
9.1 | 3.7 | 4.3
.../...
,我想箱線圖列的值,每一年。
我發現的唯一方法是手動更改數據幀(從CSV文件導入)到:
Year | Value
-----+-------
2015 | 1.2
... | ...
2016 | 5.2
... | ...
2017 | 5.6
... | ...
和使用(如果CPV是我的數據幀的名稱):
ggplot(CPV, aes(x=factor(Year), y=Time)) + geom_boxplot()
第一個問題:我可以得到的數據幀的第一種形式相同的結果?
第二個問題:我可以有相同的情節,如果我有一個「值」列,並且每年,這個值的出現次數的計數:
Value | 2015 | 2016 | ...
------+------+------+---
1 | 0 | 5 | ...
1.1 | 4 | 1 | ...
ANSWER
使用表格的第二種形式作爲箱形圖。
要使用此表格,請使用
data.table
軟件包中的melt
函數。
請註明[重複性數據] (https://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)。 – lmo
第一個問題的答案是NO。你已經展示的第二種形式是數據的「融合」形式(這是正確的方式)。對於第二個問題,一旦發生事件,您可以再次融化數據並創建箱線圖。你是否也需要'value'列? –
第一部分的可能的複製:使用GGPLOT2在同一幅圖繪製兩個變量如線(https://stackoverflow.com/questions/3777174/plotting-two-variables-as-lines-using-ggplot2-on-所述-同圖)。第二個問題應該是第二個問題。 – Henrik