特定のポイントの上下に相関があり、p値が0.01未満の変数(列)間のグラフを生成したいと思います。グラフは、相関する2つの列(変数)をプロットするggplot2(線または棒)グラフになります。
これが私のこれまでのアプローチの要点です。いくつかのダミーデータを使用して、次に進む場所へのポインタが欲しいです。
# Create some dummy data
df <- data.frame(sample(1:50), sample(1:50), sample(1:50), sample(1:50))
colnames(df) <- c("var1", "var2", "var3", "var4")
# Find correlations in the dummy data
df.cor <- cor(df)
# Make up some random pvalues for this example
x <- 0:1000
df.cor.pvals <- data.frame(sample(x/1000, 4), sample(x/1000, 4), sample(x/1000, 4), sample(x/1000,4))
colnames(df.cor.pvals) <- c("var1", "var2", "var3", "var4")
# Find the significant correlations
df.cor.extreme <- ((df.cor < -0.01 | df.cor > 0.01) & df.cor.pvals < 0.5)
# Ready data to for plotting
df$rownames <- rownames(df)
df.melt <- melt(df, id="rownames")
# I want to plot the combinations of variables that have a TRUE value
# in the df.cor.extreme matrix
以下は、var1とvar2の値がTRUEの場合のハードコードされた例です。これは、varAとvarBが相関している複数のプロットを生成するために何らかのループが必要な場所だと思います。
ggplot(df.melt[(df.melt$variable=="var1" | df.melt$variable=="var2"),], aes(x=rownames, y=value, group=variable, colour=variable)) +
geom_line()