Hi thankyou for your reply
I want to plot SD of two groups of files, with different length
I have slightly solved this by
Y2 <- as.data.table((log.norm.counts.a[,1:6]), keep.rownames = "geneid")
X2 <- as.data.table((log.norm.counts.b[,1:6]), keep.rownames = "geneid")
m3 <- merge(X2,Y2,by=c("geneid"))
head(m3)
dim(m3)
[1] 1500 13
X1 <- m3[,2:7]
head(X1[,1:6])
Y1 <- m3[,8:13]
head(Y1)
but when i try
a<- as.data.table(rowSds(X1))
b<- as.data.table(rowSds(Y1))
plot(a,b)
or
plot(rowSds(m3[,2:7]),rowSds(m3[,8:13]))
it gives error
Error in rowVars(x, rows = rows, cols = cols, na.rm = na.rm, center = center, :
Argument 'x' must be a matrix or a vector.
even
class(m3)
[1] "matrix"
You can make changes in the object you create by reading the file. Please search Stack Overflow to understand how to manipulate data frames.
Can you show us a subset of your dataframe ?
The error message say that you do not have the same length between
log.norm.counts.a[,1]
andlog.norm.counts.a[,2]
. Have you tried to check the content of these two columns ?