我需要讀取CSV文件,其中沒有標題並且列數和行數未知。但是,每隔一列都屬於一個矩陣,而下一個列需要位於不同的矩陣中。例如將CSV中的每隔一列轉換爲R中的交替矩陣
CSV輸入:
1,2,3,4
1,2,3,4
1,2,3,4
1,2,3,4
期望的結果將相當於:
matrix1 <- (c(1, 3,
1, 3,
1, 3,
1, 3), NumberOfRows, NumberOfColumns, byrow=T);
和
matrix2 <- (c(2, 4,
2, 4,
2, 4,
2, 4), NumberOfRows, NumberOfColumns, byrow=T);
我已經試過這樣的事情(但這似乎過於複雜和反正不起作用)。在R中沒有簡單的方法來做到這一點?
mydata<- read.csv("~/Desktop/file.csv", header=FALSE, nrows=4000);
columnCount<-ncol(mydata);
rowCount<-nrow(mydata);
evenColumns <- matrix(); oddColumns <-matrix();
for (i in 1:columnCount) {
if (i %% 2) {
for (l in 1:rowCount){
col <- 1;
evenColumns[col, l] <-mydata[i,l];
col<-col+1;
}
}
else {
for (l in 1:rowCount){
col <-1;
oddColumns[col, l] <-mydata[i,l];
col<-col+1;
}
}
}
這應該如何在R中正確完成?
完美!這工作,並不難理解。 – Brent