小编Aru*_*run的帖子

在模型列表上使用lapply

我已经生成了一个模型列表,并希望创建一个汇总表.

例如,这里有两个模型:

x <- seq(1:10)
y <- sin(x)^2
model1 <- lm(y ~ x)
model2 <- lm(y ~ x + I(x^2) + I(x^3))
Run Code Online (Sandbox Code Playgroud)

和两个公式,第一个从公式的组成部分生成方程

get.model.equation <- function(x) {
  x <- as.character((x$call)$formula)
  x <- paste(x[2],x[1],x[3])
}
Run Code Online (Sandbox Code Playgroud)

第二个生成模型名称作为字符串

get.model.name <- function(x) {
  x <- deparse(substitute(x))
}
Run Code Online (Sandbox Code Playgroud)

有了这些,我创建了一个汇总表

model.list <- list(model1, model2)
AIC.data <- lapply(X = model.list, FUN = AIC)
AIC.data <- as.numeric(AIC.data)
model.models <- lapply(X = model.list, FUN = get.model)
model.summary <- cbind(model.models, AIC.data)
model.summary <- as.data.frame(model.summary)
names(model.summary) <- c("Model", "AIC")
model.summary$AIC <- …
Run Code Online (Sandbox Code Playgroud)

r lapply

3
推荐指数
1
解决办法
2769
查看次数

如何使用AWK通过某列来获取文件中的行

1|1001|399.00|123                                  
1|1001|29.99|234                                  
2|1002|98.00|345                                   
2|1002|29.98|456                                   
3|1003|399.00|567  
4|1004|234.56|456
Run Code Online (Sandbox Code Playgroud)

我如何使用awk在第2列中使用'1002'获取所有行?

如果我想在第一列中使用'2'获取所有行,我可以使用grep ^ 2,但如何使用不同的列进行搜索?

unix bash awk grep

3
推荐指数
1
解决办法
251
查看次数

用行索引替换矩阵中的行值

我使用[[0,0,0,1],[0,1,0,1],[1,0,0,0],[0,0,1,1]]表示栅格的r矩阵(例如).我想用行索引值替换除0以外的每个值.有没有类似的东西

matrix[matrix==1] <- row_index
Run Code Online (Sandbox Code Playgroud)

这样我的结果会是什么样子[[0,0,0,1],[0,2,0,2],[3,0,0,0],[0,0,4,4]]

我在Mac(10.7.5)和RPY2 2.2.6上使用R 2.15.1来启动R-Methods.或者有没有其他的方式来获得类似统计功能合理的结果histogram,chi_square等等?

indexing row r matrix

3
推荐指数
1
解决办法
1960
查看次数

在 R 中绘制分组数据

我有一个分组数据如下:

group   x   y
group1  0   5
group4  0   5
group1  7   5
group4  0   5
group5  7   5
group1  7   5
group1  0   6
group2  0   6
group4  0   5
group2  0   5
group3  7   5
Run Code Online (Sandbox Code Playgroud)

x 和 y 都是离散值,范围在 0 到 7 之间。我想根据各自的 x 和 y 值将每个组数据放置在 xy 平面上。例如,我可以有多个 group1 点,所有这些应该共享相同的颜色。如何在 R 中做到这一点?

plot r graph

3
推荐指数
2
解决办法
6万
查看次数

xts将数据帧转换为字符

我有一个csv文件并使用提取数据

banknifty <- as.xts(read.zoo("banknifty.csv",sep=",",tz="" ,header=T))
Run Code Online (Sandbox Code Playgroud)

read.zoo()使用数值提取数据框,但在我应用时as.xts(),data. frame数字值将转换为字符.

# banknifty[1,] gives 
2008-01-01 09.34:00 "10" "12" "13"
Run Code Online (Sandbox Code Playgroud)

我想要as.xts返回data.frame数值.如何避免这个问题?

r xts

3
推荐指数
2
解决办法
2747
查看次数

使用R:创建一个新列,计算"n"个其他列的'n'条件发生的次数

我有第1列和第2列(ID和值).接下来我想要一个count列,列出每个id出现相同值的次数.如果它不止一次出现,它显然会重复该值.此数据集中还有其他变量,但新计数变量只需要有2个条件.我已经浏览了这个博客,但我找不到一种方法来使新变量以多个变量为条件.

ID     Value     Count
1        a         2 
1        a         2 
1        b         1
2        a         2
2        a         2
3        a         1
3        b         3
3        b         3
3        b         3
Run Code Online (Sandbox Code Playgroud)

先感谢您!

r

3
推荐指数
1
解决办法
1978
查看次数

使用ggplot2构建折线图

我需要绘制三条线(在一张图上),每条线代表一个实验室团队的数据(两个变量/团队).理想情况下,图形应该看起来美观(因此使用ggplot2!),但形式与下图所示的线图相似.我不明白如何使用gggplot2库将多行绘制到单个图形上.我目前对ggplot2库的知识/技能很低,但我在下面列出了我的初出茅庐的努力.

http://www.harding.edu/fmccown/r/#linecharts

编辑:每行由两个向量构成,如下所示:

temp = c(4, 25, 50, 85, 100) 
enzyme_activity = c(0.543, 0.788, 0.990, 0.898, 0.882) 
Run Code Online (Sandbox Code Playgroud)

在x轴上使用temp变量,每行使用不同的颜色,以便区分它们.

EDIT2:

amyA = c(0.091, 0.147, 0.202, 0.236, 0.074)
temp = c(4, 23, 37, 65, 100)
df = data.frame(temp, amyA)

ggplot(df, aes(x = temp, y = amyA, col = 'blue')) + geom_line()
Run Code Online (Sandbox Code Playgroud)

第二次编辑中的代码不会生成蓝线,并且图例完全错误.如果我用不同的数据重复两个ggplot调用,则只绘制一行.

r ggplot2

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

R:将列乘以数据表中的常量

我正在尝试更正我的数据表,因此我的列具有相同的单位.这是我所拥有的一个例子.

hh:mm   A   V   W   kA  V   kW  A   kV  kW
11:00   13.84   470.16  6509.88 14.89   467.85  6964.38 15.74   464.01  7303.13
11:05   12.54   475.17  5959.22 13.40   474.52  6358.89 13.34   473.13  6311.80
11:10   9.73    476.20  4632.14 10.36   473.38  4905.86 10.38   472.73  4907.14
11:15   9.20    479.30  4410.89 9.65    482.79  4659.67 9.73    479.09  4659.33
11:20   11.28   482.22  5437.78 12.03   484.95  5835.33 12.24   476.36  5829.44
11:25   11.66   481.64  5614.56 12.76   479.95  6124.56 12.88   476.86  6139.33
11:30   10.38   475.13  4934.00 11.99   480.96  5760.44 11.50   478.77 …
Run Code Online (Sandbox Code Playgroud)

r data.table

3
推荐指数
1
解决办法
6147
查看次数

有没有办法在将一个data.frame连接到另一个data.frame时替换匹配行上的列值?

我正在努力通过一些参考专栏将一个数据表的元素与另一个"主"集合在一起.为了使事情更清楚,我创建了一些示例数据:

这是我想要加入另一个"主集"的数据集.

data.frame(refID = c(1,3,4,5,7,8), value = c(3.3,3.9,4.4,8.0,1.1,2.5))

refID   value
1       3.3
3       3.9
4       4.4
5       8.0
7       1.1
8       2.5
Run Code Online (Sandbox Code Playgroud)

主集:

data.frame(refID = 1:9, value = rep(0,9))

refID   value
1       0
2       0
3       0
4       0
5       0
6       0
7       0
8       0
9       0
Run Code Online (Sandbox Code Playgroud)

我基本上希望将第一个数据集中的值列发送到第二个数据集,但是如果存在间隙,则让它们的值为0.最终,我希望得到:

结果集:

refID   value
1       3.3
2       0.0   
3       3.9
4       4.4
5       8.0
6       0.0
7       1.1
8       2.5
9       0.0
Run Code Online (Sandbox Code Playgroud)

我打得周围的一些东西dplyrdata.table包,但似乎无法真正找出这样做的一个很好的和直接的方式.非常感谢建议,非常感谢.

join r dataframe dplyr data.table

3
推荐指数
1
解决办法
1995
查看次数

按数据表上的最后一个空格拆分字符串

我有一个包含2列的数据表:

             term  freq
1:    a arena tour    1
2: a available why    1
3:     a backup in    1
4:       a bad ass    1
5:     a bad chick    1
Run Code Online (Sandbox Code Playgroud)

我想将"term"列拆分为最后一个空格,例如:

         termA  termB freq
1:     a arena   tour    1
2: a available    why    1
3:    a backup     in    1
4:       a bad  chick    1
Run Code Online (Sandbox Code Playgroud)

我尝试使用"str"(代码bellow),它仅对一个字符串起作用,但对data.date不起作用(似乎在所有行上使用相同的索引)

data.table (termA = substr(dt_n3$term, 1, rev(gregexpr("\\ ", dt_n3$term)[[1]])[1]-1),
                         termB = substr(dt_n3$term, rev(gregexpr("\\ ", dt_n3$term)[[1]])[1], 1000),
                         freq = dt_n3$freq)
Run Code Online (Sandbox Code Playgroud)

无论如何,我不认为这是最好的方法.有人可以帮我吗?谢谢

string split r data.table

3
推荐指数
1
解决办法
208
查看次数

标签 统计

r ×9

data.table ×3

awk ×1

bash ×1

dataframe ×1

dplyr ×1

ggplot2 ×1

graph ×1

grep ×1

indexing ×1

join ×1

lapply ×1

matrix ×1

plot ×1

row ×1

split ×1

string ×1

unix ×1

xts ×1