SCA-IRCM / SingleCellSignalR_v1

R package
26 stars 17 forks source link

Error when run inter_network or intra_network #4

Closed DouberZ closed 4 years ago

DouberZ commented 4 years ago

Hi, I attempted to process my data with SingleCellSignalR. However, this unexpected error returned.

Error in rownames<-(*tmp*, value = as.character(m.names)) : attempt to set 'rownames' on an object with no dimensions 3. stop("attempt to set 'rownames' on an object with no dimensions") 2. rownames<-(*tmp*, value = as.character(m.names)) 1. intra_network(goi = "Csf1r", coi = "cluster 6", data = input, genes = rownames(input), cluster = as.numeric(Idents(temp)), species = "mus musculus", write = FALSE, signal = signal)

As previous it is OK to run cell_signaling with same parameters.

signal <- cell_signaling(data = input, genes = rownames(input), cluster = as.numeric(Idents(temp)), c.names = levels(temp$cellType), int.type = "paracrine", species="mus musculus", write = FALSE)

Would you please help me with this? Thanks a lot.

SCA-IRCM commented 4 years ago

Hi, Maybe your problem comes from the rownames of input. Are you sure rownames(input) are mouse genes? Also, are you sure input is a data frame with ncol(input)>0 and nrow(input)>0? And, is signal a list of length>0? If you can answer positively to these three questions and the problem remains, contact me again and I will take a deeper look into the code.

Thank you for using SingleCellSignalR.

SCA

DouberZ commented 4 years ago

I run cell_signaling successfully and I also checked the output of cell_signaling, there should be no problem with the output.

The input data was also checked, and it should be normal.

As for the error information, I understood that it could be caused by the object with only one column, therefore no dimension. However, I have no idea about which sub-process the error returned from. I compared your code of intra_network and that of cell_signaling, and I just couldn't find anything for such an error.

As you seem to update your code recently, have you tested it with 10X PBMC data each time you update your code?

SCA-IRCM commented 4 years ago

One more thing, you used c.names = levels(temp$cellType) in the cell_signaling function so that the names(signal) will be composed of c.names, but in the intra_network function you used coi="cluster 6" without specifying c.names. Try to put c.names = levels(temp$cellType) and coi = levels(temp$cellType)[6] in the intra_network function.

DouberZ commented 4 years ago

Thanks a lot. Although I tried intra_network several times, it seems that I didn't pay much attention on cluster name.

After checked with cluster name, I got results from inter_network.

However, I still failed running intra_network. But it seems to be caused by other problem. I think I should open another issue for this.