0
我有2個文件包含2個不同主機上相同測試的基準測試結果。結果是空間分隔格式的原始數據。使用R比較來自2個文件的數據使用R
我需要能夠比較他們彼此作爲主機是不一樣的。主要用於繪圖的目的。有沒有辦法添加每個文件獨有的「字段」或列(但與該文件中的所有行相同),然後我可以使用它來區分圖表中的結果?我還能如何去做這件事。
我有2個文件包含2個不同主機上相同測試的基準測試結果。結果是空間分隔格式的原始數據。使用R比較來自2個文件的數據使用R
我需要能夠比較他們彼此作爲主機是不一樣的。主要用於繪圖的目的。有沒有辦法添加每個文件獨有的「字段」或列(但與該文件中的所有行相同),然後我可以使用它來區分圖表中的結果?我還能如何去做這件事。
你可以明確地添加額外的列。
例如:
# first file
df1 <- read.table(...)
# identify as first file
df1$file_name <- 'file1'
# second file
df2 <- read.table(...)
df2$file_name <- 'file2'
# combine:
df <- rbind(df1,df2)
當然,你不需要做這麼多的步驟,但是這應該給你一個起點方向。
這裏的總體思路:
# Some example data
d1 <- read.table(text = "
a b
1 2
2 8
3 4", header=T)
d2 <- read.table(text = "
a b
1 3
2 10
3 5", header=T)
# Add an identifying column to each data.frame, then 'rbind()' them together
d1 <- data.frame(host = "host1", d1)
d2 <- data.frame(host = "host2", d2)
d <- rbind(d1, d2)
# Plot the results with your graphical system of choice
library(lattice)
xyplot(b~a, group=host, data=d, type="b", auto.key=TRUE)
這是拋出一個錯誤:「錯誤match.names(clabs,姓名(十一)): 名稱不匹配以前的名字」 – Jericon 2012-03-08 01:27:03
這是因爲你的兩個數據框必須有不同的列名 - 您的文件1和文件2具有不同的列名稱。在合併之前將它們設置爲相同的(例如,如果'df1'具有列'a'和'c',而'df2'具有列'a'和'b',則R不會將'b'合併到同一列as'c'因爲它們可能有不同的列名,因爲它們不應該組合)。 – 2012-03-08 01:35:41
他們有相同的列名。但是我已經在rbind之後定義了列的名稱。在修正它之前移動它。謝謝! – Jericon 2012-03-08 02:01:06