小编Jil*_*ina的帖子

计算每行的标准偏差

我试图用来rowSds()计算每一行标准偏差,以便我可以选择具有高sds的行来绘制图形.

我调用的数据框是xx这样的:

head(xx,1)
     Job     variable 2012-02-23 2012-02-24 2012-02-25 2012-02-27 2012-02-28 2012-02-29 2012-03-01 2012-03-02 2012-03-03 2012-03-05 2012-03-06 2012-03-07 2012-03-08 2012-03-09 2012-03-10 2012-03-12 2012-03-13 2012-03-14
1 A Duration        152        424         NA        499        320        117        211        363         NA        605         76        309        204        185         NA         25        733        500
  2012-03-15 2012-03-16 2012-03-17 2012-03-19 2012-03-20 2012-03-21 2012-03-22 2012-03-23 2012-03-24 2012-03-26 2012-03-27 2012-03-28 2012-03-29 2012-03-30 2012-03-31 2012-04-02 2012-04-03 2012-04-04 2012-04-05 2012-04-06
1        521        601         NA        229        758        421        334        659         NA        419        423 …
Run Code Online (Sandbox Code Playgroud)

r

9
推荐指数
1
解决办法
4万
查看次数

如何在没有数据的情况下保存glm结果或仅使用系数进行预测?

当我使用以下R代码时,

model_glm=glm(V1~. , data=xx,family="binomial");
save(file="modelfile",model_glm);
Run Code Online (Sandbox Code Playgroud)

modelfile的大小将与数据一样多,在我的情况下将是1gig.如何删除model_glm结果中的数据部分,因此我只能保存一个小文件.

r prediction glm

9
推荐指数
2
解决办法
5244
查看次数

创建一个填充随机数的新列

很抱歉这个简单的问题,我在搜索中找不到合适的解决方案.我想在我的数据框中创建一个新列,并用1到100之间的随机数填充(可以重复).

以下是我目前正在使用的代码,

data$newrow <- rep(1:100,replace=T, nrow(data))

我收到此错误:

Error in `$<-.data.frame`(`*tmp*`, "newrow", value = c(1L, 2L,  : 
  replacement has 2088800 rows, data has 20888`
Run Code Online (Sandbox Code Playgroud)

你能帮我修改我的代码吗?

r

9
推荐指数
1
解决办法
2万
查看次数

如何将所有子列表元素组合到一个列表中

我有一个列表(长度为3),由子列表组成(每个都有不同的长度 - 2,2,3).我想将所有这些存储为一个大的列表(例如,没有子列表 - 只有一个长度为7的列表).我理解如何手动完成,但有一个我可以使用的功能或命令吗?

我希望能够为任何长度的列表和子列表执行此操作.

这是列表的一个例子:

[[1]]
[[1]][[1]]
      name  n       l_1         t         t_3          t_4          t_5 cluster
12  563035 19  9.263158 0.2017045  0.06379453  0.075876830  0.095852895       1
14  563037 19  8.026316 0.2076503  0.05634675  0.098684211 -0.104566563       1


[[1]][[2]]
      name  n       l_1         t         t_3          t_4          t_5 cluster
13  563036 20  7.200000 0.1838450 -0.06428098  0.085681987 -0.011070830       2
17  563042 20  7.725000 0.2168285  0.15161037  0.117570045 -0.067102568       2


[[2]]
[[2]][[1]]
      name  n       l_1          t          t_3          t_4           t_5 cluster
1   561101 11  6.772727 0.19731544  0.029478458 -0.128117914  6.235828e-02 …
Run Code Online (Sandbox Code Playgroud)

r list

9
推荐指数
1
解决办法
6177
查看次数

生成所有可能的n从R中的向量中选择2对,高效且快速

想象一下,我有一个向量x,我想创建一个矩阵,所有可能的n选择x的元素的2个组合.

更详细的,让我们说x是,

x = c(1,2,3,4)
Run Code Online (Sandbox Code Playgroud)

然后,所有可能的(4选2)= 6,

X = as.matrix(data.frame(col1 = c(1,1,1,2,2,3), col2 = c(2,3,4,3,4,4)))
Run Code Online (Sandbox Code Playgroud)

R中有功能吗?

r

9
推荐指数
1
解决办法
9593
查看次数

R中的零分割

是否有一种简单的方法可以避免R中的0除法错误.具体来说,

a <- c(1,0,2,0)
b <- c(3,2,1,0)
sum(b/a)
Run Code Online (Sandbox Code Playgroud)

此代码由于除以零而产生错误.我想要一种方法来定义任何/ 0 = 0,以便这种操作仍然有效.

r

8
推荐指数
5
解决办法
2万
查看次数

计算数据帧中的计数变量

我有一个R数据框:

a <- 1:12  
list <- c(rep("x",3),rep("y",4),rep("z",3),rep("x",2))  
data <- data.frame(a,list)

data  
 a list  
 1    x  
 2    x  
 3    x  
 4    y  
 5    y  
 6    y  
 7    y  
 8    z  
 9    z  
10    z  
11    x  
12    x
Run Code Online (Sandbox Code Playgroud)

我想创建一个新列,每当"list"的值发生变化时,该列开始计数为1,即在此示例中:

b <- c(1:3,1:4,1:3,1:2)    
data <- data.frame(a,list,b)  
Run Code Online (Sandbox Code Playgroud)

我不是R的专家,也不能为我的生活找到一种有效的方法.我的主要问题似乎是"list"的任何值都可以随时返回,但是对于一个值的块的长度没有规则.有没有人有任何想法?谢谢!

r

8
推荐指数
2
解决办法
249
查看次数

将目录树表示为递归列表

我遇到了某项任务.我想要的是一个函数,给定一个目录路径,将返回一个递归列表作为输出.

输出的格式应为myList $ dir $ subdir $ subdir $ fullFilePath

所以基本上我想将目录树表示为某个列表.我获取所有文件,获取每个文件的所有子目录,但我不知道如何将它全部扔进多个级别的列表中.

r list recursive-datastructures directory-tree

8
推荐指数
1
解决办法
1360
查看次数

如何从矩阵中提取rownames?

我有一个矩阵,其中rownames是日期.我想将这些行名称提取到一个变量中,然后使用rownames()将这些日期应用到我拥有的另一个矩阵中.假设矩阵称为'data.matrix'.

每当我跑:

data.matrix[,0]
Run Code Online (Sandbox Code Playgroud)

我得到了所有日期的打印输出.所以我这样做:

v <- data.matrix[,0]
Run Code Online (Sandbox Code Playgroud)

当我返回v时,我得到了所有日期的清单.但是当我使用时:

rownames(other.matrix) <- v
Run Code Online (Sandbox Code Playgroud)

然后我回来:

head(other.matrix)
Run Code Online (Sandbox Code Playgroud)

我没有得到任何新的列名.

另外,当我尝试:

head(v)
Run Code Online (Sandbox Code Playgroud)

我明白了 NULL

但当我这样做时:

v
Run Code Online (Sandbox Code Playgroud)

我得到了所有约会的精美打印件.

什么给出了什么?起初我认为矩阵和日期是不相容的,但似乎它们似乎是.

现在我用merge()这种方式添加日期:

z <- merge(v, other.matrix)
Run Code Online (Sandbox Code Playgroud)

但感觉有更好的方法来做到这一点.

r matrix rowname

8
推荐指数
1
解决办法
2万
查看次数

R-生成"缺失值变量"

我正在使用R生成如何处理我正在教授的统计类的缺失数据的示例.一种方法需要生成"缺失值二进制变量",其中0表示包含缺失值的情况,1表示没有缺失值.例如

n  X  Y    Z  
1  4  300  2  
2  8  400  4  
3  10 500  7  
4  18 NA   10  
5  20  50  NA  
6  NA 1000 5  
Run Code Online (Sandbox Code Playgroud)

我想生成一个变量M,这样

n m  
1 1  
2 1   
3 1  
4 0  
5 0  
6 0  
Run Code Online (Sandbox Code Playgroud)

考虑到R处理缺失值的能力,这看起来应该很简单.我发现的最接近的是m <-ifelse(is.na(missguns),0,1),但所有这一切都会生成一个新的整个数据矩阵,其中0或1表示缺失.但是,我只想要一个变量来指示行是否包含缺失值.

r missing-data dummy-data

8
推荐指数
1
解决办法
1667
查看次数