我想从 R 中的栅格堆栈中计算出无监督的随机森林分类。栅格堆栈在不同的光谱带中表示相同的范围,因此我想获得堆栈的无监督分类。我的代码有问题,因为我的数据非常庞大。是否可以将堆栈转换为数据帧以便像这样运行随机森林算法:
stack_median <- stack(b1_mosaic_median, b2_mosaic_median, b3_mosaic_median, b4_mosaic_median, b5_mosaic_median, b7_mosaic_median)
stack_median_df <- as.data.frame(stack_median)
这是 csv 文件形式的数据(https://www.dropbox.com/s/gkaryusnet46f0i/stack_median_df.csv?dl=0) - 您可以通过以下方式读取它:
stack_median_df<-read.csv(file="stack_median_df.csv")
stack_median_df<-stack_median_df[,-1]
stack_median_df_na <- na.omit(stack_median_df)
我的下一步将是无监督分类:
median_rf <- randomForest(stack_median_df_na, importance=TRUE, proximity=FALSE, ntree=500, type=unsupervised, forest=NULL)
由于我的数据集庞大,无法计算邻近度度量(大约需要 6000GB)。你知道怎么才能看分类吗?作为predict(median_rf)
并且plot(median_rf)
不返回任何东西。
我很高兴看到无监督随机森林分类及其准确性措施的每一个建议、改进或代码片段,...非常感谢!