我在生存对象方面遇到了一些麻烦autoplot()。我将以下面的例子为例
library(ggplot2)
library(ggfortify)
library(survival)
datalung <- lung
fitlung<- survfit(Surv(time,status) ~ sex,type = "kaplan-meier",data=datalung)
autoplot(fitlung,conf.int=FALSE,pVal=TRUE,pX=800)+scale_color_grey()
Run Code Online (Sandbox Code Playgroud)
在上面的示例中,性别 1 和性别 2 具有不同的灰度,只有 2 个组,可以很好地看到不同的组。
我使用的真实数据集有 9 个不同的组,并且很难用这种灰度看到不同的曲线。我不能使用颜色。我正在寻找一种将符号放入不同组的方法,但我在autoplot.
有surv.linetype选项solid和dashed,但它会更改具有相同模式的所有曲线,我不想要它。以lung数据为例,我想linetype为性别 1 和性别 2 设置不同的数据。
我有一个包含近 4,000 个观察值的数据集,其中包含 9 个不同的组。所以我有以下变量
组: 1,2,3,....,9
性别:男、女
体重:每个人的体重
我想做的是为每个组制作成对的箱线图(男性,女性)。所以在本例中我将有 18 个箱线图。
我如何在不为每个箱线图(subset()或which())函数创建一个子集数据的情况下做到这一点。
除此之外,我对这些数据有一个小问题,有一些没有权重的观察结果,单元格是空的或有.一个点。
这是一个包含 3 组的虚构样本,其中性别 =1 表示女性,2 表示男性。
Group Sex Weight
1 1 140
1 2
1 2 160
1 1 154
1 1 127
2 2 182
2 2 192
2 1 .
2 1 147
2 1 129
3 1 124
3 2 182
3 1 .
3 2 141
3 1 148
Run Code Online (Sandbox Code Playgroud)
这个功能我没用过,dput()不知道好不好
dput(data)
structure(list(Group …Run Code Online (Sandbox Code Playgroud) 我刚刚开始学习 r 中的 data.table 和
library(data.table)
data(iris)
iris[Species == 'setosa']
Run Code Online (Sandbox Code Playgroud)
上面的代码不会过滤数据集中物种为 setosa 的行,它只是打印满足条件的行。
iris <- iris[Species == 'setosa']
Run Code Online (Sandbox Code Playgroud)
上面的代码有效,但我想知道在什么样的情况下我需要为操作分配一个新对象才能有效,而不仅仅是打印结果。另外,在同一对象上分配是否有任何风险?