小编Pro*_*091的帖子

使用data.table基于R中的两个分组变量进行汇总

我正在尝试data.table在R中使用以总结以下数据表:

SiteNo Var1 Var2 Var3 ... Var18 Group
1      0.1 0.3  1         0.3     1
2      0.3 0.1  0.9       0.2     1
etc.
Run Code Online (Sandbox Code Playgroud)

共有668,944个观测值,43个站点,3个组和19个变量.我想获得一个函数的结果(例如mean),它通过站点和组来汇总每个列/变量.所以应该有43个站点x 3组x#的摘要统计数据(例如mean).我使用了以下代码:

e.dt<-data.table(e)
setkey(e.dt, Group) # set key to group number

# get mean for each column/variable
e.dt.mean<-e.dt[,lapply(.SD,mean), by="SiteNo"]
Run Code Online (Sandbox Code Playgroud)

使用上面的内容,我得到了43个站点,但不是我追求的3个站点.我可以将原始数据表拆分为三组,但是想知道是否有使用两个变量(SiteNo和Group)进行汇总的方法data.table.

我还在RTM data.table,但到目前为止我还没有找到上述答案.

r data.table

7
推荐指数
1
解决办法
4508
查看次数

如何使用 ROCR 提取平均 ROC 曲线预测?

ROCRR提供了绘制平均 ROC 曲线的能力(来自ROCR 参考手册):

library(ROCR)
library(ROCR)
data(ROCR.xval)
# plot ROC curves for several cross-validation runs (dotted
# in grey), overlaid by the vertical average curve and boxplots
# showing the vertical spread around the average.
data(ROCR.xval)
pred <- prediction(ROCR.xval$predictions, ROCR.xval$labels)
perf <- performance(pred,"tpr","fpr")
plot(perf,col="grey82",lty=3)
plot(perf,lwd=3,avg="vertical",spread.estimate="boxplot",add=TRUE)
Run Code Online (Sandbox Code Playgroud)

带箱线图的平均 ROC 图

迷人的。不幸的是,似乎无法将平均 ROC 曲线本身作为对象/数据帧/等获取。用于进一步的统计测试(例如,使用 pROC)。我确实做了一些研究(尽管可能是在事实之后),我发现了这篇文章:

R 中的全局变量

我查看了 ROCR 的代码,发现以下几行用于将结果传递给绘图:

performance_plots.R,(从第 451 行开始)

## compute average curve
 perf.avg <- perf.sampled
 perf.avg@x.values <- list( rowMeans( data.frame( perf.avg@x.values))) …
Run Code Online (Sandbox Code Playgroud)

r roc

6
推荐指数
1
解决办法
3746
查看次数

强制排序命令忽略文件夹名称

我从基本文件夹运行以下./

find . -name *.xvi.txt | sort
Run Code Online (Sandbox Code Playgroud)

返回以下排序顺序:

./LT/filename.2004167.xvi.txt
./LT/filename.2004247.xvi.txt
./pred/2004186/filename.2004186.xvi.txt
./pred/2004202/filename.2004202.xvi.txt
./pred/2004222/filename.2004222.xvi.txt
Run Code Online (Sandbox Code Playgroud)

如您所见,文件名遵循常规结构,但文件本身可能位于目录结构的不同部分.有没有办法忽略文件​​夹名称和/或目录结构,以便排序只返回文件名本身的文件夹/文件名列表?像这样:

./LT/filename.2004167.xvi.txt
./pred/2004186/filename.2004186.xvi.txt
./pred/2004202/filename.2004202.xvi.txt
./pred/2004222/filename.2004222.xvi.txt
./LT/filename.2004247.xvi.txt
Run Code Online (Sandbox Code Playgroud)

我在find和sort命令下尝试了几个不同的开关,但没有运气.我总是可以将所有内容复制到一个文件夹并从那里排序,但是有几百个文件,我希望存在一个更优雅的选项.

谢谢!非常感谢您的帮助.

sorting bash find

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

如何将复杂的日期/时间字符串解析为zoo对象?

我正在尝试将以下日期/时间字符串转换为zoo对象:

2004:071:15:23:41.87250

2004:103:15:24:15.35931

同期:DOY:小时:分钟:秒

日期/时间字符串存储在没有标题的数据框中.R中最好的方法是什么?

干杯!

根据Gavin的回答编辑:

# read in time series from CSV file; each entry as described above
timeSeriesDates <- read.csv("timeseriesdates.csv", header = FALSE, sep = ",")
# convert to format that can be used as a zoo object
timeSeriesDatesZ <- as.POSIXct(timeSeriesDates$V1, format = "%Y:%j:%H:%M:%S")
Run Code Online (Sandbox Code Playgroud)

r zoo

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

标签 统计

r ×3

bash ×1

data.table ×1

find ×1

roc ×1

sorting ×1

zoo ×1