谁能告诉我如何在lavaan结构方程式模型的包装的模型声明中编码潜在变量的相互作用?
假设我有潜在变量L1和一些观察变量F1,并且想对它们对某些结果的交互作用进行编码Y:
L1 =~ x1 + x2
Y ~ L1 * F1
Run Code Online (Sandbox Code Playgroud)
这行不通。
提前致谢!
所以我有一个功课问题,我真的很难在R中编码.
这就是问题:编写一个函数difference(),它将一个向量X作为参数,并返回每个元素和下一个元素之间差异的向量:
X[2]-X[1], X[3]-X[2], X[4]-X[3]等.
因此difference(c(5,2,9,4,8))会回来c(-3,7,-5,4)
到目前为止我有这个:
difference<-function(X) {
for (i in X)
X.val<-X[i]-X[i-1]
return(X.val)
}
difference(c(5,2,9,4,8))
Run Code Online (Sandbox Code Playgroud)
我似乎无法让函数减去它X[2]-X[1],它返回的数字比我运行函数时应该多一个.谁能帮我?
我想手动(或自动)改变R中ggplot2图形的分面图的面板布局.我已经看到了Facets的注释和重新排序的解决方案,但不是这个特定的问题.这是一个可重复的例子:
library(ggplot2)
plot <- ggplot(diamonds, aes(carat, price)) + facet_wrap(~cut) + geom_point()
Run Code Online (Sandbox Code Playgroud)
如果我现在查看绘图,您会看到空白构面分配在绘图网格的右下角.
我想做的就是让空白绘图位置在左上角,但仍然绘制所有其他绘图(只需移动空白绘图位置).
我试过ggplot_build()这样看:
plot_build <- ggplot_build(plot)
plot_build$panel$layout
Run Code Online (Sandbox Code Playgroud)
但我无法弄清楚如何将空白绘图位置实际移动到正确的行和列.有没有人有任何想法?
我知道grep在R 中使用,如果你想在开头找到某个字符串,你可以使用^,但是如何将它与变量一起使用?
txt <- c("the cat ate the bill", "bill was late")
Run Code Online (Sandbox Code Playgroud)
然后
grep("^bill", txt)
Run Code Online (Sandbox Code Playgroud)
回报2.
我想编写一个函数,它将一个变量字x作为输入,并查找一行是否txt以该字开头.我的第一次尝试是:
extract_word<-function(x){
grep(^x, txt)
}
Run Code Online (Sandbox Code Playgroud)
但是我收到一个错误:
错误意外^ in:"extract_word <-function(x,txt){grep(^
我有这个tbl具有以下形式的结构:
> tbl
a_1 a_2 a_3
[1,] "L" "14" "L"
[2,] "L" "62" "D"
[3,] "H" "0" "L"
Run Code Online (Sandbox Code Playgroud)
这是一个矩阵,实际上:
> class(tbl)
[1] "matrix"
Run Code Online (Sandbox Code Playgroud)
但是当我尝试将其更改为 a 时data.frame,df 的所有条目仅显示数据类型,如下所示:
>as.data.frame(tbl, nrow = length(tbl[,1]), ncol = 3, byrow = TRUE)
a_1 a_2 a_3
<list> <list> <list>
<chr[1]> <chr[1]> <chr[1]>
<chr[1]> <chr[1]> <chr[1]>
<chr[1]> <chr[1]> <chr[1]>
Run Code Online (Sandbox Code Playgroud)
我尝试了多种选择,但似乎都不起作用,包括:
data.frame(rows=rownames(tbl)[row(tbl)],vars=colnames(tbl)[col(tbl)], values=c(tbl))
但是当我尝试使用它时收到一个错误。我希望结果data.frame采用以下形式:
a_1 a_2 a_3
<char> <chr> <char>
"L" "14" "L"
"L" "62" "D"
"H" "0" "L"
Run Code Online (Sandbox Code Playgroud)
我寻找了类似的问题,但找不到任何有同样问题的人。任何建议都会有很大帮助!
dput(tbl)
structure(list("L", …Run Code Online (Sandbox Code Playgroud) 我有一个R数据处理问题.我在.csv文件中有大量数据,我可以使用它加载readr.问题是我需要添加到数据帧的缺失值.
示例数据:
X1 X2 Value
Coal 1 300
Coal 3 100
Coal 5 150
NatG 2 175
NatG 4 150
Run Code Online (Sandbox Code Playgroud)
此文件将正确加载.但是,我想添加处理,以便最终的数据帧包含每个X1类型的条目和X2中的整个序列1:5,缺失值设置为零.最终的数据框如下:
X1 X2 Value
Coal 1 300
Coal 2 0
Coal 3 100
Coal 4 0
Coal 5 150
NatG 1 0
NatG 2 175
NatG 3 0
NatG 4 150
NatG 5 0
Run Code Online (Sandbox Code Playgroud)
我尝试使用readr加载所有条目等于零的文件,然后将实际数据读入相同的数据框,但这是一个破坏性的覆盖,并删除了丢失的行.我需要知道如何在数据帧中添加适当的行,而不知道X1下每个值的1:5序列中将丢失哪些值.
我尝试将图形数据存储在 R 中:
g<- graph.formula(1-2,1-3,2-3,2-4,2-7,3-4,3-6,3-7,3-8,3-9,3-10,4-8,4-9,5-6,5-7,5-8,6-7,6-8,6-9,6-10,7-8,7-9,8-9,8-10)
Run Code Online (Sandbox Code Playgroud)
使用 R 中的 igraph 包。
然而,在查看顶点的顺序时:
V(g)$name
Run Code Online (Sandbox Code Playgroud)
它返回:
"1" "2" "3" "4" "7" "6" "8" "9" "10" "5"
Run Code Online (Sandbox Code Playgroud)
我可以知道如何输入数据才能使其以升序形式显示吗?
这是来自 R 中 dplyr 的“sample_n”。
https://dplyr.tidyverse.org/reference/sample.html
为了可重复性,我应该放置一个种子,以便其他人可以获得我的确切结果。
是否有内置的方法来设置“sample_n”的种子?这是我在环境中做的事情并且“sample_n”响应它吗?
这些不是内置在“sample_n”函数中的。
.
我正在尝试使用 igraph/ggraph 来绘制一个网络,其中一些边是有向的,而另一些则不是。
我的边缘列表中的一个小例子。这里,蛋白质位点边缘是我想要表示为无向的,而磷酸化边缘是有向的。
df <- data.frame(
stringsAsFactors = FALSE,
from = c("RPS6KA3", "RPS6KA3", "RPS6KA3", "RPS6KA3", "RPS6KA3"),
to = c("RPS6KA3_Y529-p",
"RPS6KA3_S227-p","RPS6KA3_S369-p","RPS6KA3_T577-p","ATF4"),
action = c("protein-site","protein-site",
"protein-site","protein-site","phosphorylation")
)
Run Code Online (Sandbox Code Playgroud)
我尝试对无向边进行子集化并指定它们,但它不起作用:
library(igraph)
nw <- graph_from_data_frame(df)
E(nw)[E(nw)$action == "protein-site"] <- as.undirected(subgraph.edges(nw, E(nw)[E(nw)$action == "protein-site"] ))
Run Code Online (Sandbox Code Playgroud)
有人还有其他建议吗?正如我所说,我真的只想绘制这个(使用 ggraph)。
谢谢!
我尝试在高级 R中实现该示例 ,以查看有多少名称指向某个位置。正如作者所说
\n\n\n请注意,如果您\xe2\x80\x99 使用 RStudio,
\nrefs()将始终返回 2:环境浏览器会引用您在命令行上创建的每个对象。
然而,就我而言,即使我已经清除了全局环境,也refs()总会返回65535
library(pryr)\nx <- 1:10\nc(address(x), refs(x))\n\n## "0x1d931f32d68" "65535" \nRun Code Online (Sandbox Code Playgroud)\n这是什么意思?
\n