小编Dat*_*ner的帖子

将R闪亮应用程序部署为独立应用程序

我开发了一个RShiny应用程序,我想与我的同事在内部共享(在服务器上托管应用程序,在这个阶段不是一个选项).

我正在探索各种选项,我遇到了一种技术,可以将您的应用程序捆绑为一个独立的桌面应用程序,并附带一个安装程序文件,然后您可以共享和分发该文件.(这里和这里解释了这种方法)这非常简洁,因为安装它的用户不需要安装和运行应用程序的R(以及任何其他必需的软件包)(它有R的便携版本,chrome等)

我能够按照这种方法创建一个独立的桌面应用程序,带有一个安装程序文件,我现在可以开始共享了.

但是,这是我的担忧:理想情况下,我不希望我的用户能够访问源代码.有没有办法限制这种访问?在教程(我发布的第一个链接)中,这是作者所说的:

*

最后,请记住,您的源代码很容易访问.如果这是您关注的问题(例如,如果您要分发给不应该访问代码的客户端),您可以做的最好的事情是首先将敏感源代码编译为二进制包,从而阻碍访问.也就是说,任何知道R(并且具有足够意图)的用户都可以简单地将代码转储到控制台.

*

是否有更好,更简单的方法来阻止访问?

谢谢!

r shiny

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

为什么Spark在使用DataFrames时会报告"java.net.URISyntaxException:绝对URI中的相对路径"?

我在Windows机器上本地运行Spark.我能够成功启动火花壳,并在文本文件中读取RDD.我还能够关注这个主题的各种在线教程,并能够在RDD上执行各种操作.

但是,当我尝试将RDD转换为DataFrame时,我收到错误.这就是我在做的事情:

val sqlContext = new org.apache.spark.sql.SQLContext(sc)
import sqlContext.implicits._

//convert rdd to df
val df = rddFile.toDF()
Run Code Online (Sandbox Code Playgroud)

此代码生成一系列错误消息,这些消息似乎与以下内容相关:

Caused by: java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: file:C:/Users/spark/spark-warehouse
        at org.apache.hadoop.fs.Path.initialize(Path.java:205)
        at org.apache.hadoop.fs.Path.<init>(Path.java:171)
        at org.apache.hadoop.hive.metastore.Warehouse.getWhRoot(Warehouse.java:159)
        at org.apache.hadoop.hive.metastore.Warehouse.getDefaultDatabasePath(Warehouse.java:177)
        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB_core(HiveMetaStore.java:600)
        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:620)
        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:461)
        at org.apache.hadoop.hive.metastore.RetryingHMSHandler.<init>(RetryingHMSHandler.java:66)
        at org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:72)
        at org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:5762)
        at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.<init>(HiveMetaStoreClient.java:199)
        at org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.<init>(SessionHiveMetaStoreClient.java:74)
        ... 85 more
Caused by: java.net.URISyntaxException: Relative path in absolute URI: file:C:/Users/spark/spark-warehouse
        at java.net.URI.checkPath(URI.java:1823)
        at java.net.URI.<init>(URI.java:745)
        at org.apache.hadoop.fs.Path.initialize(Path.java:202)
        ... 96 more
Run Code Online (Sandbox Code Playgroud)

整个堆栈跟踪如下.

16/08/16 12:36:20 WARN ObjectStore: Failed to …
Run Code Online (Sandbox Code Playgroud)

dataframe apache-spark apache-spark-sql

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

用mean替换缺失值 - Spark Dataframe

我有一个带有一些缺失值的Spark Dataframe.我想通过用该列的平均值替换缺失值来执行简单的估算.我对Spark很新,所以我一直在努力实现这个逻辑.这是我到目前为止所做的事情:

a)要为单个列(比如Col A)执行此操作,这行代码似乎有效:

df.withColumn("new_Col", when($"ColA".isNull, df.select(mean("ColA"))
  .first()(0).asInstanceOf[Double])
  .otherwise($"ColA"))
Run Code Online (Sandbox Code Playgroud)

b)但是,我无法弄清楚,如何对我的数据帧中的所有列执行此操作.我正在尝试Map函数,但我相信它遍历数据帧的每一行

c)SO上有类似的问题 - 这里.虽然我喜欢这个解决方案(使用聚合表和合并),但我非常想知道是否有办法通过遍历每一列来实现这一点(我来自R,所以使用更高阶函数循环遍历每一列lapply对我来说似乎更自然).

谢谢!

scala dataframe apache-spark apache-spark-sql imputation

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

具有辅助输入的Keras中的LSTM模型

我有一个包含2列的数据集 - 每列包含一组文档.我必须将Col A中的文档与Col B中提供的文档相匹配.这是一个受监督的分类问题.所以我的训练数据包含一个标签栏,表明文件是否匹配.

为了解决这个问题,我创建了一组功能,例如f1-f25(通过比较2个文档),然后在这些功能上训练了二元分类器.这种方法运行得相当好,但现在我想评估这个问题的深度学习模型(特别是LSTM模型).

我keras在Python中使用该库.在浏览了keras文档和在线提供的其他教程后,我成功完成了以下操作:

from keras.layers import Input, Embedding, LSTM, Dense
from keras.models import Model

# Each document contains a series of 200 words 
# The necessary text pre-processing steps have been completed to transform  
  each doc to a fixed length seq
main_input1 = Input(shape=(200,), dtype='int32', name='main_input1')
main_input2 = Input(shape=(200,), dtype='int32', name='main_input2')

# Next I add a word embedding layer (embed_matrix is separately created    
for each word in my vocabulary by reading from a pre-trained …
Run Code Online (Sandbox Code Playgroud)

keras keras-layer

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