小编Mic*_*din的帖子

如何在 Jupyter Notebook 的 Markdown 单元中定义 LaTeX 宏?

我想在 Jupyter 笔记本的 Markdown 单元中定义一个宏。但我们似乎无法定义它。

例如,我想定义一个格式化向量的宏。单元格中的代码是:

\newcommand{\vect}[1]{{\mathbf{\boldsymbol{{#1}}}}}

This is the vector $\vect{x}$.
Run Code Online (Sandbox Code Playgroud)

渲染效果是:

该宏未使用。

PS 这个问题是在https://tex.stackexchange.com/questions/281535/latex-macros-in-markdown提出的,但它与 LaTeX 没有直接关系,并且该问题被标记为偏离主题。

markdown latex jupyter-notebook

7
推荐指数
1
解决办法
3402
查看次数

sklearn 中的 2D KDE 带宽与 scipy 中的带宽之间的关系

我正在尝试比较sklearn.neighbors.KernelDensityscipy.stats.gaussian_kde对于二维数组的性能。

本文中,我看到每个函数中的带宽 (bw) 处理方式不同。这篇文章给出了在 in 中设置正确 bw 的方法,scipy因此它与sklearn. 基本上,它将 bw 除以样本标准偏差。结果是这样的:

# For sklearn
bw = 0.15

# For scipy
bw = 0.15/x.std(ddof=1)
Run Code Online (Sandbox Code Playgroud)

x我用来获取 KDE 的样本数组在哪里。这在 1D 中工作得很好,但我不能让它在 2D 中工作。

MWE是我得到的一个:

import numpy as np
from scipy import stats
from sklearn.neighbors import KernelDensity

# Generate random data.
n = 1000
m1, m2 = np.random.normal(0.2, 0.2, size=n), np.random.normal(0.2, 0.2, size=n)
# Define limits.
xmin, xmax = min(m1), max(m1) …
Run Code Online (Sandbox Code Playgroud)

python scipy kernel-density scikit-learn

6
推荐指数
1
解决办法
3658
查看次数

Seaborn KDEPlot - 数据变化不够?

我有一个包含 ~900 行的数据框;我正在尝试为某些列绘制 KDEplots。在某些列中,大多数值是相同的最小值。当我包含太多最小值时,KDEPlot 会突然停止显示最小值。例如,以下包括 600 个值,其中 450 个是最小值,并且绘图看起来不错:

y = df.sort_values(by='col1', ascending=False)['col1'].values[:600]
sb.kdeplot(y)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

但是包括 451 个最小值给出了非常不同的输出:

y = df.sort_values(by='col1', ascending=False)['col1'].values[:601]
sb.kdeplot(y)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

最终,我想绘制不同列的双变量 KDEPlots,但我想先了解这一点。

python kernel-density seaborn

4
推荐指数
1
解决办法
682
查看次数

如何将 Python 会话(包括输入和输出)保存为文本?

我有一个 Python 脚本:

x=1.
x
Run Code Online (Sandbox Code Playgroud)

我想从命令行生成以下文本:

Python 3.7.4 (default, Aug 13 2019, 20:35:49) 
[GCC 7.3.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> x=1.
>>> x
1.0
Run Code Online (Sandbox Code Playgroud)

并将其保存到文件中。

这是我通过交互式复制和粘贴代码到 Python 解释器中可以获得的内容。

我考虑了以下消息:

我考虑过

  • 使用 IPython 和 "%save" 魔法,但这只会保存 Python 语句,而不是语句的输出,
  • 使用 Jupyter Notebook,但导出格式为 PDF、tex、HTML 等...而我只想要纯文本。

任何帮助将不胜感激。

python

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

如何在Python中使用克里格法对二维空间数据进行插值?

我有一个二维空间域,例如 [0,1]\xc3\x97[0,1]。在此域中,有 6\xc2\xa0 个点,其中观察到了一些感兴趣的标量(例如,温度、机械应力、流体密度等)。如何预测未观察点的兴趣量?换句话说,如何在 Python 中插入空间数据?

\n

例如,考虑 2D 域中的点的以下坐标(输入)以及感兴趣数量的相应观测值(输出)。

\n
import numpy as np\ncoordinates = np.array([[0.0,0.0],[0.5,0.0],[1.0,0.0],[0.0,1.0],[0.5,1.],[1.0,1.0]])\nobservations = np.array([1.0,0.5,0.75,-1.0,0.0,1.0])\n
Run Code Online (Sandbox Code Playgroud)\n

X\xc2\xa0 和 Y\xc2\xa0 坐标可以通过以下方式提取:

\n
x = coordinates[:,0]\ny = coordinates[:,1]\n
Run Code Online (Sandbox Code Playgroud)\n

以下脚本创建一个散点图,其中黄色(或蓝色)代表高(或低)输出值。

\n
import matplotlib.pyplot as plt\nfig = plt.figure()\nplt.scatter(x, y, c=observations, cmap=\'viridis\')\nplt.colorbar()\nplt.show()\n
Run Code Online (Sandbox Code Playgroud)\n

6点观察

\n

我想使用克里金法来预测二维输入域内规则网格上感兴趣的标量。我怎样才能在Python中做到这一点?

\n

spatial-interpolation scikit-learn kriging openturns

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