首页 > 解决方案 > 在 Filezilla 中运行 R 脚本

问题描述

我想知道它是否可以在 filezilla 中运行 R 脚本。

我的目的是运行几个星期的随机森林分析,我想使用这个服务器来运行这个脚本并在它完成时得到结果。

我可以访问远程服务器。

问候。

标签: rfilezilla

解决方案


FTP 和 SFTP 通常不用于启动(启动、运行)程序。话虽如此......我做了一些类似的事情,其中​​我通过 FTP/SFTP 将 R 绘图发送到 Raspberry Pi IoT 智能屏幕。

我的项目在这里描述。如果这对您不起作用,请提供更多详细信息,我将帮助将其编辑为适当的 FileZilla 改编版本。

以下是我为这样的任务所做的一般工作:

  1. 设置任务 / cron 作业 / 宏等以在计算机 A 上查找文件
  2. 编写一个像这样的小 SFTP 脚本并在计算机 B 上的代码中调用它
  3. 代码传输文件和 CRON 作业或 Windows 任务或任何一直在寻找要更改的文件的程序

对于不同的用例,有任何数量的微小变化。

在您的情况下,听起来您在服务器(计算机 A)上的 CRON 作业应该始终寻找对您的笔记本电脑(计算机 B)上传到它的输入数据集(?)的更改,一旦完成,您的 R 脚本将调用一些代码类似于我上面的第二个链接,它通过 FTP/SFTP 将输出数据发送给您。

您的 R 脚本可能是这样的(任意机器学习,然后调用 FTP/SFTP/SCP)。

Machine_learning_code.R

###############################
# Random Forest SFTP Example  #
###############################

# You would run this on the server
library(RRF)  
set.seed(1)

# What's RRF do better than randomForest? 
# See hack-r.com for a tutorial

# Only the 1st and last features are truly useful
X <- matrix(runif(50*50), ncol=50)
class <- (X[,1])^2 + (X[,50])^2  
class[class>median(class)]  <- 1;
class[class<=median(class)] <- 0

# Ordinary random forest
rf <- RRF(X,as.factor(class), flagReg = 0)

predictions <- predict(rf)

write.csv(predictions)

msg <- system("WinSCP.com /script=..//code//win_scp_pi_push1", intern=T)
print(msg)

在同一台计算机上,您还应该运行win_scp_pi_push1示例中的脚本 ( ),就像我在 GitHub 上链接到的脚本一样。

我用的是 WinSCP,但 FileZilla 也支持命令行:

https://wiki.filezilla-project.org/Command-line_arguments_(客户端)


推荐阅读