|
@ -1,15 +1,20 @@ |
|
|
ggheatmap<-function(df, x=NULL, y=NULL, value=NULL, grouping="mean"){ |
|
|
|
|
|
|
|
|
ggheatmap<-function(df, x=NULL, y=NULL, value=NULL, grouping="mean", exclude_group=NULL){ |
|
|
if (is.null(x)){x=colnames(df)[1]} |
|
|
if (is.null(x)){x=colnames(df)[1]} |
|
|
if (is.null(y)){y=colnames(df)[2]} |
|
|
if (is.null(y)){y=colnames(df)[2]} |
|
|
if (is.null(value)){value=colnames(df)[3]} |
|
|
if (is.null(value)){value=colnames(df)[3]} |
|
|
|
|
|
|
|
|
df<-rename(df, "VarX"=all_of(x), "VarY"=all_of(y), "Value"=all_of(value)) |
|
|
df<-rename(df, "VarX"=all_of(x), "VarY"=all_of(y), "Value"=all_of(value)) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (!is.null(exclude_group)){ |
|
|
|
|
|
df<-df %>% group_by(VarX,VarY) |
|
|
|
|
|
}else{ |
|
|
|
|
|
df<-df %>% group_by(VarX,VarY,all_of(exclude_group)) |
|
|
|
|
|
} |
|
|
if (grouping == "mean"){ |
|
|
if (grouping == "mean"){ |
|
|
df<-df %>% group_by(VarX,VarY) %>% summarise(Value=mean(Value)) %>% ungroup |
|
|
|
|
|
|
|
|
df<-df %>% summarise(Value=mean(Value)) %>% ungroup |
|
|
} |
|
|
} |
|
|
if (grouping == "median"){ |
|
|
if (grouping == "median"){ |
|
|
df<-df %>% group_by(VarX,VarY) %>% summarise(Value=median(Value)) %>% ungroup |
|
|
|
|
|
|
|
|
df<-df %>% summarise(Value=median(Value)) %>% ungroup |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
order<-clustsort(df %>% spread(VarY,Value) %>% as.data.frame) |
|
|
order<-clustsort(df %>% spread(VarY,Value) %>% as.data.frame) |
|
|