我正在尝试以以下模式匹配电话号码:
9 99 99 99 99
0999999999
11 0999999999
9 9999 9999
Run Code Online (Sandbox Code Playgroud)
但不是以下:
9 99 99 99 99 (two spaces)
9 99\n99 99 99
Run Code Online (Sandbox Code Playgroud)
因此,我想匹配 7 到 12 位数字和它们之间的可选空格,但不是多个空格的序列。
到目前为止,我想出了"[\d ?]{7,12}",但它并不真正符合要求,因为空格被计入 {7,12} 并且它还匹配两个空格序列。
我想使用 plotnine 使用 brewer 定性调色板,但出现错误:
ValueError: Invalid color map name 'Set1' for type 'Sequential'.
Valid names are: ['Blues', 'BuGn', 'BuPu', 'GnBu', 'Greens', 'Greys', 'OrRd', 'Oranges', 'PuBu', 'PuBuGn', 'PuRd', 'Purples', 'RdPu', 'Reds', 'YlGn', 'YlGnBu', 'YlOrBr', 'YlOrRd']
Run Code Online (Sandbox Code Playgroud)
可重现的例子
from plotnine import *
import pandas as pd
df = pd.DataFrame({'a': [0,1,2,3,4], 'b': [0,-2,10,6,8], 'c': ['a', 'b', 'a', 'a', 'b']})
(ggplot(df, aes(x = 'a', y = 'b', color = 'factor(c)')) +
geom_line() +
scale_color_brewer(palette = 'Set1'))
Run Code Online (Sandbox Code Playgroud)
但是,在 R 中的 ggplot2 中,您可以执行相同操作并获得正确的绘图
library(ggplot2)
df = …Run Code Online (Sandbox Code Playgroud) 我正在尝试merge_asof从 Pandas使用,但出现错误:
TypeError: Function call with ambiguous argument types
可重现的例子:
import pandas as pd
a = pd.DataFrame({'foo': [1., 2.], 'bar': ['2019-01-01 00:00:10', '2019-01-01 00:00:20']})
b = pd.DataFrame({'foo': [2., 5.], 'baz': ['2019-01-01 00:00:05', '2019-01-01 00:00:25']})
a['bar'] = pd.to_datetime(a['bar'])
b['baz'] = pd.to_datetime(b['baz'])
pd.merge_asof(a,
b,
left_on='bar',
right_on='baz',
direction='backward',
by='foo',
allow_exact_matches=False)
Run Code Online (Sandbox Code Playgroud)
我试图检查 pandas.core.reshape.merge 文件,但没有成功解决问题
我正在尝试为我的诗歌环境安装 Jupyter 内核,但似乎该内核获取了我的基本 conda 环境。这就是我正在尝试的:
poetry env list
>ENV_NAME-HASH-py3.9 (Activated)
poetry run which python
>/Users/myusername/Library/Caches/pypoetry/virtualenvs/ENV_NAME-HASH-py3.9/bin/python
poetry run ipython kernel install --name=ENV_NAME
>Installed kernelspec ENV_NAME in /Users/myusername/Library/Jupyter/kernels/ENV_NAME
Run Code Online (Sandbox Code Playgroud)
然后,如果我打开带有此内核的 Jupyter,我不会获得应安装的库。检查我得到的Python版本:
!which python
/Users/myusername/opt/anaconda3/bin/python
Run Code Online (Sandbox Code Playgroud)
任何帮助表示赞赏!
我有一个闪亮的应用程序,已经在闪亮的应用程序上托管了一段时间。
我下载了该应用程序并在本地进行了测试,其中一个功能的行为略有不同。我相信这是由于某些库的版本不同造成的。
我想知道是否有一种方法可以检查已部署应用程序的库的版本,以便我可以在本地安装它们并进行检查。
我在 Python 3 中有一些代码,我通过reticulate库在 R 中运行这些代码以在shiny应用程序中使用。它在我的本地机器上运行良好,但是当我在 Shinyapps.io 中发布时,网状默认使用 Python 2。
到目前为止,我尝试使用use_python函数,但我不确定路径:
use_python("/usr/bin/python3", require = TRUE)
Run Code Online (Sandbox Code Playgroud)
日志给了我错误:
2019-02-12T13:44:54.691167+00:00 shinyapps[710102]: Warning: Error in initialize_python: Python shared library '/usr/lib/libpython3.5.so' not found, Python bindings not loaded.
2019-02-12T13:44:54.697101+00:00 shinyapps[710102]: 64: stop
2019-02-12T13:44:54.697103+00:00 shinyapps[710102]: 63: initialize_python
2019-02-12T13:44:54.697104+00:00 shinyapps[710102]: 62: ensure_python_initialized
2019-02-12T13:44:54.697105+00:00 shinyapps[710102]: 61: py_run_file
2019-02-12T13:44:54.697106+00:00 shinyapps[710102]: 60: source_python
2019-02-12T13:44:54.697107+00:00 shinyapps[710102]: 59: server [/srv/connect/apps/str_telefonica/app.R#57]
2019-02-12T13:44:54.697385+00:00 shinyapps[710102]: Error in initialize_python(required_module, use_environment) :
2019-02-12T13:44:54.697387+00:00 shinyapps[710102]: Python shared library '/usr/lib/libpython3.5.so' not found, Python bindings …Run Code Online (Sandbox Code Playgroud) 我正在尝试自定义bnlearn使用图表学习的图表RGraphviz.当我有无向边时,RGraphviz当我尝试自定义图形的外观时,将它们转向两个方向的有向边.
一个可重复的例子可能是:
set.seed(1)
x1 = rnorm(50, 0, 1)
x2 = rnorm(50, 0, 1)
x3 = x2 + rnorm(50, 0, 1)
x4 = -2*x1 + x3 + rnorm(50, 0, 1)
graph = data.frame(x1, x2, x3, x4)
library(bnlearn)
library(Rgraphviz)
res = gs(graph)
options(repr.plot.width=3, repr.plot.height=3)
g1 <- graphviz.plot(res)
Run Code Online (Sandbox Code Playgroud)
图未定制:
到现在为止还挺好.但是,如果我尝试自定义它:
plot(g1, attrs = list(node = list(fontsize=4, fillcolor = "lightgreen")))
Run Code Online (Sandbox Code Playgroud)
自定义图表
无向边缘被转换.
即使我只使用情节(g1),我也会遇到这个问题.问题是这(保存g1然后使用绘图)似乎改变了图形的外观.
我有一个整数数组说:
arr = [1,2,3,4,5,6,7,8,9,10]
Run Code Online (Sandbox Code Playgroud)
以及另外两个定义我应该如何重新排序的数组:
A = [1,4,5,7,8]
B = [1,3,4,5,6]
Run Code Online (Sandbox Code Playgroud)
A和B具有相同的尺寸.
我想以arr一种方式重新排序,使得值在值A之前B,但是在任一个数组中都没有显示的值保持在同一个位置.例如:
>>> reorder(arr, A, B)
[1, 2, 4, 5, 7, 8, 3, 6, 9, 10]
Run Code Online (Sandbox Code Playgroud) python ×6
r ×3
shiny ×2
algorithm ×1
bnlearn ×1
pandas ×1
plotnine ×1
python-3.x ×1
r-graphviz ×1
regex ×1
reticulate ×1