这与R和ggpairs中用户定义的调色板中的问题相同 ,或者有没有办法使用ggplot更改GGally :: ggpairs的调色板?
只有那里的解决方案不再有效.
我也想更改调色板,但有没有办法使用ggplot更改GGally :: ggpairs的调色板?不再起作用了.该怎么办?
MWE:
library(GGally)
library(ggplot2)
data(diamonds, package="ggplot2")
diamonds.samp <- diamonds[sample(1:dim(diamonds)[1],200),]
ggpairs(
diamonds.samp[,1:2],
mapping = ggplot2::aes(color = cut),
upper = list(continuous = wrap("density", alpha = 0.5), combo = "box"),
lower = list(continuous = wrap("points", alpha = 0.3), combo = wrap("dot", alpha = 0.4)),
diag = list(continuous = wrap("densityDiag")),
title = "Diamonds"
)
Run Code Online (Sandbox Code Playgroud)
我想补充一下
scale_colour_manual(values=c('red','blue','green','red','blue'))
Run Code Online (Sandbox Code Playgroud)
(显然这只是虚拟代码)并得到类似的东西(我没有绘制所有的点):
我试图安装Jupyter -支持星火 在畅达环境(这是我设置使用http://conda.pydata.org/docs/test-drive.html)的的蟒蛇分布.我正在尝试使用apache toree作为Jupyter Kernel.
这是我安装Anaconda后的所作所为:
conda create --name jupyter python=3
source activate jupyter
conda install jupyter
pip install --pre toree
jupyter toree install
Run Code Online (Sandbox Code Playgroud)
一切正常,直到我到达最后一行.我得到了
PermissionError: [Errno 13] Permission denied: '/usr/local/share/jupyter'
Run Code Online (Sandbox Code Playgroud)
这就引出了一个问题:为什么它甚至会查看该目录?毕竟它应该留在环境中.因此我感到满意
jupyter --paths
Run Code Online (Sandbox Code Playgroud)
得到
config:
/home/user/.jupyter
~/anaconda2/envs/jupyter/etc/jupyter
/usr/local/etc/jupyter
/etc/jupyter
data:
/home/user/.local/share/jupyter
~/anaconda2/envs/jupyter/share/jupyter
/usr/local/share/jupyter
/usr/share/jupyter
runtime:
/run/user/1000/jupyter
Run Code Online (Sandbox Code Playgroud)
我不太确定发生了什么,以及如何继续运行(如果可能的话)conda环境"jupyter".
到目前为止,我一直使用 conda 作为虚拟环境和依赖项管理。但是,将我的 environment.yml 文件从我的开发机器传输到生产服务器时,有些东西无法按预期工作。现在,我想研究替代方案。诗歌看起来不错,尤其是因为
诗歌还维护一个锁定文件,它比 pipenv 有好处,因为它跟踪哪些包是子依赖项。( https://realpython.com/effective-python-environment/#poetry )
这可能会大大提高稳定性。但是,我正在从事科学性很强的项目(矩阵、数据科学、机器学习),因此在实践中我需要 scipy 堆栈(例如 numpy、pandas、scitkit-learn)。
Python 对于一些纯计算工作负载来说变得太慢了,所以 numpy 和 scipy 诞生了。[...] 它们是用 C 编写的,只是包装成一个 python 库。
编译这样的库会带来一系列挑战,因为它们(或多或少)必须在您的机器上编译以获得最大性能并与 glibc 等库正确链接。
Conda 是作为一种多合一的解决方案引入的,用于为科学界管理 Python 环境。
[...] 不是在您的机器上使用脆弱的库编译过程,而是预编译库,并在您请求时才下载。不幸的是,该解决方案附带了一个警告 - conda 不使用 PyPI,这是最流行的 Python 包索引。
(https://modelpredict.com/python-dependency-management-tools#fnref:conda-compiling-challenges)
据我所知,这甚至不符合 Conda 的标准,因为它做了相当多的优化以充分利用我的 CPU/GPU/numpy 架构。( https://jakevdp.github.io/blog/2016/08/25/conda-myths-and-misconceptions/#Myth-#6:-Now-that-pip-uses-wheels,-conda-is-no - 需要更长的时间)
https://numpy.org/install/本身建议使用 conda,但也说可以通过 pip 安装(而诗歌使用 pypi)
对于那些从个人喜好或阅读下面关于 conda 和 pip 之间的主要区别而知道他们更喜欢基于 pip/PyPI 的解决方案的用户,我们建议:
[...] 使用 Poetry 作为维护最良好的工具,它以与 conda 类似的方式提供依赖项解析器和环境管理功能。
我想获得诗歌设置的稳定性和 conda 设置的速度。
诗歌如何处理二进制依赖?它是否也像 conda …
我阅读并欣赏了来自Lukas Eder 的文章http://blog.jooq.org/2012/01/05/the-java-fluent-api-designer-crash-course/,我想创建一个流畅的界面类.
该类有四个函数("words"fill1到fill4),它们允许设置对象属性和四个函数("words"get1 to get4)获取这些属性,但只有在设置了所需的属性时:
首先,我必须填写基本设置(fill1).之后我或者能够获得一些这些设置(get1到get3),这些是Strings.或者我可以填写更多信息(fill2到fill4).但是只有在每次 fill2到fill4被调用至少一次之后,才能调用最终的get4.我该怎么做呢?
第一个图(状态是黑点)显示我想要做什么,但你可以看到?标记不清楚的部分,因为如果保留在第一个图形中,即使只调用了fill2到fill4中的一个,它也会允许调用get4.
第二个图表会强制每个fill2到fill4已被调用但强制执行顺序并限制如果我想更改例如fill3,我也必须重置fill2和fill4.
最后一个图表会做我想要的,但它有13个状态!现在,如果我想象我只会在fill2到fill4的组中再添加一个属性,那么状态的数量会更多.
编辑:此外,在考虑了一些之后,我注意到我这样做的方式(见下文)甚至无法实现最后一个图,因为在调用fill2之后,我们可能处于不同的状态 -取决于之前发生的事情.
我能做什么/应该做什么?
编辑:我实现我的流畅的界面有点像一个立面(如果我有正确的设计模式).我的意思是:我让实际的类几乎不受影响 - 返回它(如方法链接),但是在方法签名中将相应的状态接口作为返回值.状态由嵌套接口表示.例:
public class MyClass implements MyInterface.Empty, MyInterface.Full {
String stuff;
private MyClass(){};
public static MyInterface.Empty manufactureNewInstance(){
return new MyClass();
}
public MyInterface.Full fillStuff(String stuff){
this.stuff = stuff;
return this;
}
public String getStuff(){
return stuff;
}
}
public interface MyInterface {
public interface Empty {
public MyInterface.Full fillStuff();
}
public interface Full {
public String …Run Code Online (Sandbox Code Playgroud) 我想在 Scala 中构建我的项目,然后在 Python 脚本中使用它来进行数据黑客攻击(作为模块或类似的东西)。我已经看到有多种方法可以使用 Jython 将 python 代码集成到 JVM 语言中(尽管只有 Python 2 项目)。但我想做的是相反的。我在网上没有找到如何执行此操作的信息,但奇怪的是这应该是不可能的。
我将构建一个密集数据操作的程序(使用 Scala 或 Python - 尚未决定)。我看到两种市长的做法:
我不确定,但第一种方法可能更像函数式编程,第二种方法更像 OOP,对吗?顺便说一句,我喜欢函数式编程和 OOP(有人说它们是对立的,但 Odersky 尽力用 Scala 来反驳这一点)。
我更喜欢第二种方法,因为
但是,我担心如果我有很多数据(我确实有),我会消耗很多内存,因为该方法可能必须被实例化很多次。
引导我:我应该选择哪种方法?
这是一个粗略的 DataObject 类:
class DataObject {
List datavalues
def mymethod(){
...
}
}
Run Code Online (Sandbox Code Playgroud) 出于测试目的,我希望Spark 2.x以本地模式运行.我怎样才能做到这一点?我可以这样做吗?目前我写的是main:
val spark = SparkSession
.builder
.appName("RandomForestClassifierExample")
.getOrCreate()
Run Code Online (Sandbox Code Playgroud)
并在IntelliJ中运行main,但是我得到了错误
org.apache.spark.SparkException: A master URL must be set in your configuration
Run Code Online (Sandbox Code Playgroud)
我想我需要运行一些本地实例或设置本地模式或类似的东西.我该怎么办?
我想设置sbt版本。我尝试通过project/build.properties在项目中创建文件来完成此操作,并添加了以下代码行
sbt.version=0.13.13
Run Code Online (Sandbox Code Playgroud)
但是IntelliJ告诉我
未使用的财产
我该怎么做才能使IntelliJ使用不同的sbt版本?
之间有什么区别
https://docs.scipy.org/doc/numpy/reference/generated/numpy.polyfit.html
和
https://docs.scipy.org/doc/numpy/reference/generated/numpy.polynomial.polynomial.polyfit.html
我应该在什么时候使用哪一个?
我检查了代码,但是两者都在他们的代码中使用 numpy.linalg.linalg.lstsq ,但在其他方面有所不同。
numpy.polyfit 的文档也建议使用
https://docs.scipy.org/doc/numpy/reference/generated/numpy.polynomial.polynomial.Polynomial.fit.html
什么是正确的选择?
(奖励:当我想做的第一件事是适应我的数据时,我将如何使用该类?)
适用于大规模复杂、任务关键型数据和机器学习流程的工作流自动化平台
我浏览了相当多的文档,但我不明白为什么它是“数据和机器学习”。在我看来,它是容器编排(此处为 Kubernetes)之上的工作流管理器,其中工作流管理器意味着我可以定义有向无环图(DAG),然后将 DAG 节点部署为容器,并且 DAG 是跑步。
当然,这对于“数据和机器学习”来说非常有用且重要,但我也可以将它用于任何其他微服务 DAG。除了功能/细节之外,这与https://airflow.apache.org或其他工作流程管理器(其中有很多)有何不同。还有更专门的“数据和机器学习”工作流程管理器,例如https://spark.apache.org。
作为软件架构师我应该记住什么?