我一直在试图实现贝叶斯线性回归使用模型PyMC3与真实数据(即不是从线性函数+高斯噪声)从数据集sklearn.datasets.我选择了具有最小数量的属性(即load_diabetes())形状为的回归数据集(442, 10); 就是,442 samples和10 attributes.
我相信我的模型正在运行,后面看起来还不错,可以预测并弄清楚这些东西是如何起作用的......但我意识到我不知道如何使用这些贝叶斯模型进行预测!我试图避免使用glm和patsy符号,因为我很难理解使用它时实际发生了什么.
我尝试了以下内容: 从pymc3 和http://pymc-devs.github.io/pymc3/posterior_predictive/中的推断参数生成预测,但我的模型在预测时非常糟糕,或者我做错了.
如果我实际上正在做正确的预测(我可能不是),那么任何人都可以帮助我优化我的模型.我不知道是否最少mean squared error,absolute error或类似的东西在贝叶斯框架中有效.理想情况下,我想得到一个number_of_rows数组=我的X_te属性/数据测试集中的行数,以及来自后验分布的样本列数.
import pymc3 as pm
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns; sns.set()
from scipy import stats, optimize
from sklearn.datasets import load_diabetes
from sklearn.cross_validation import train_test_split
from theano …Run Code Online (Sandbox Code Playgroud) 我正在尝试按照本教程.
TensorFlow刚刚问世,我真的想要了解它.我熟悉像Lasso,Ridge和ElasticNet这样的惩罚线性回归及其在中的用法scikit-learn.
对于scikit-learnLasso回归,我需要输入回归算法的是DF_X[M×N维属性矩阵(pd.DataFrame)]和SR_y[M维目标向量(pd.Series)].VariableTensorFlow中的结构对我来说有点新鲜,我不知道如何将输入数据构建成它想要的东西.
似乎softmax回归用于分类. 如何重构我的DF_X(M×N属性矩阵)和SR_y(M维目标向量)以输入tensorflow线性回归?
我目前进行线性回归的方法使用pandas,numpy和sklearn,如下所示.我认为这个问题对于熟悉TensorFlow的人来说非常有用:
#!/usr/bin/python
import pandas as pd
import numpy as np
import tensorflow as tf
from sklearn.linear_model import LassoCV
#Create DataFrames for attribute and target matrices
DF_X = pd.DataFrame(np.array([[0,0,1],[2,3,1],[4,5,1],[3,4,1]]),columns=["att1","att2","att3"],index=["s1","s2","s3","s4"])
SR_y = pd.Series(np.array([3,2,5,8]),index=["s1","s2","s3","s4"],name="target")
print DF_X
#att1 att2 att3
#s1 0 0 1
#s2 2 3 1
#s3 4 5 1
#s4 3 4 1
print SR_y
#s1 …Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个线性网络图Python(使用(尽管有matplotlib,networkx但有兴趣bokeh),在概念上类似于下面的一个.
如何pos在Python中使用networkx?有效地构建这个图形图? 我想将它用于更复杂的示例,所以我觉得对这个简单示例的位置进行硬编码是没有用的:(.networkx有解决方案吗?
pos(字典,可选) - 以节点为键,位置为值的字典.如果未指定,则将计算弹簧布局定位.有关计算节点位置的函数,请参阅networkx.layout.
我还没有看到任何有关如何实现这一目标的教程,networkx这就是为什么我认为这个问题将成为社区的可靠资源.我已经广泛地完成了这些networkx教程,没有像这样的东西.如果networkx不仔细使用这个pos论点,那么这种网络的布局就无法解释......我相信这是我唯一的选择. https://networkx.github.io/documentation/networkx-1.9/reference/drawing.html文档中的预计算布局似乎都没有很好地处理这种类型的网络结构.
简单示例:
(A)每个外键是图中从左到右移动的迭代(例如,迭代0表示样本,迭代1具有组1-3,与迭代2相同,迭代3具有组1-2等).(B)内的字典包含在该特定迭代当前的分组,和表示当前组的前组的合并的权重(例如,iteration 3已Group 1与Group 2和iteration 4所有的iteration 3's Group 2已进入iteration 4's Group 2但iteration 3's Group 1已被划分.权重总是总和为1.
我的代码为上图的连接w /权重:
D_iter_current_previous = {
1: {
"Group 1":{"sample_0":0.5, "sample_1":0.5, "sample_2":0, "sample_3":0, "sample_4":0},
"Group 2":{"sample_0":0, "sample_1":0, …Run Code Online (Sandbox Code Playgroud) 我想用我用字典(即{leaf: color})形式制作的彩色地图为我的星团着色.
我试过跟随https://joernhees.de/blog/2015/08/26/scipy-hierarchical-clustering-and-dendrogram-tutorial/,但由于某种原因颜色搞砸了.默认情节看起来不错,我只是想以不同方式分配这些颜色.我看到有一个link_color_func,但当我尝试使用我的色彩图(D_leaf_color字典)时,我得到一个错误b/c它不是一个功能.我创建D_leaf_color了自定义与特定群集关联的叶子的颜色.在我的实际数据集中,颜色意味着什么,所以我正在转向任意颜色分配.
我不想color_threshold在我的实际数据中使用b/c,我有更多的簇并SciPy重复颜色,因此这个问题...
如何使用我的叶色字典来自定义树形图簇的颜色?
我做了一个GitHub问题https://github.com/scipy/scipy/issues/6346,在那里我进一步详细阐述了解释SciPy层次聚类树形图输出的叶子着色方法 ?(也许发现了一个错误...)但我仍然无法弄清楚如何实际:(i)使用树状图输出用我指定的颜色字典重建我的树形图或(ii)重新格式化我的D_leaf_color字典link_color_func参数.
# Init
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns; sns.set()
# Load data
from sklearn.datasets import load_diabetes
# Clustering
from scipy.cluster.hierarchy import dendrogram, fcluster, leaves_list
from scipy.spatial import distance
from fastcluster import linkage # You can use SciPy one too …Run Code Online (Sandbox Code Playgroud) python machine-learning hierarchical-clustering dendrogram scipy
#input
my_string = 'abcdefgABCDEFGHIJKLMNOP'
Run Code Online (Sandbox Code Playgroud)
如何从字符串中提取所有UPPER?
#output
my_upper = 'ABCDEFGHIJKLMNOP'
Run Code Online (Sandbox Code Playgroud) 我刚刚完成了Osvaldo Martin的Python书中的贝叶斯分析(理解贝叶斯概念和一些花哨的numpy索引的好书).
我真的想将我的理解扩展到贝叶斯混合模型,用于无监督的样本聚类.我所有的谷歌搜索都让我看到了Austin Rochford的教程,这本教程非常有用.我理解发生了什么,但我不清楚它如何适应群集(特别是使用群集分配的多个属性,但这是一个不同的主题).
我知道如何分配先验,Dirichlet distribution但我无法弄清楚如何获得集群PyMC3.看起来大多数mus会聚到质心(即我从中采样的分布方式),但它们仍然是分开的components.我考虑过weights(w在模型中)截止,但这似乎不像我想象的那样工作,因为多个components具有稍微不同的平均参数mus正在收敛.
如何从此PyMC3模型中提取聚类(质心)?我给了它最多的15组件,我想收敛3.在mus似乎是在正确的位置,但权重搞砸b他们被其他集群之间分配/ C,所以我不能用一个权重阈值(除非我把它们合并,但我不认为这是事情是这样的通常做完).
import pymc3 as pm
import numpy as np
import matplotlib.pyplot as plt
import multiprocessing
import seaborn as sns
import pandas as pd
import theano.tensor as tt
%matplotlib inline
# Clip at 15 components
K = 15 …Run Code Online (Sandbox Code Playgroud) python machine-learning bayesian unsupervised-learning pymc3
我用 iris 数据集创建了一个玩具图。我的布局来自 PCA 排序,它很好地分离了节点。
我最近发现了边缘捆绑。有人知道用matplotliband做到这一点的方法networkx吗?
from sklearn.decomposition import PCA
import pandas as pd
import networkx as nx
import matplotlib.pyplot as plt
import numpy as np
# Data
X_iris = pd.DataFrame({'sepal_length': {'iris_0': 5.1, 'iris_1': 4.9, 'iris_2': 4.7, 'iris_3': 4.6, 'iris_4': 5.0, 'iris_5': 5.4, 'iris_6': 4.6, 'iris_7': 5.0, 'iris_8': 4.4, 'iris_9': 4.9, 'iris_10': 5.4, 'iris_11': 4.8, 'iris_12': 4.8, 'iris_13': 4.3, 'iris_14': 5.8, 'iris_15': 5.7, 'iris_16': 5.4, 'iris_17': 5.1, 'iris_18': 5.7, 'iris_19': 5.1, 'iris_20': 5.4, 'iris_21': 5.1, 'iris_22': …Run Code Online (Sandbox Code Playgroud) temp = "['a','b','c']"
print type(temp)
#string
output = ['a','b','c']
print type(output)
#list
Run Code Online (Sandbox Code Playgroud)
所以我有这个临时字符串,它基本上是一个字符串格式的列表...我试图把它变成一个列表,但我不确定一个简单的方法来做到这一点.我知道一种方法,但我宁愿不使用正则表达式
如果我使用temp.split()我得到
temp_2 = ["['a','b','c']"]
Run Code Online (Sandbox Code Playgroud) 我的conda收到格式错误的版本字符串错误。我不知道如何调试此或如何检查它。
有人可以帮忙吗?GitHub讨论了这个问题,但是我还没有看到任何修复。
-bash-4.1$ conda install -c bioconda pysam
Solving environment: failed
1. CondaValueError: Malformed version string '~': invalid character(s).
Run Code Online (Sandbox Code Playgroud)
针对以下评论:
(mage_env) -bash-4.1$ echo $PATH
/usr/local/devel/ANNOTATION/jespinoz/anaconda/envs/mage_env/bin:/usr/local/packages/jdk-8u121/bin/:/usr/local/bin:/usr/local/devel/ANNOTATION/rrichter/local/bin:/home/syooseph/utils/clustalw1.83:/usr/local/packages/gsl/bin:/usr/local/sge_current/bin/lx-amd64:/usr/lib64/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/devel/ANNOTATION/jespinoz/anaconda/bin:/usr/local/devel/ANNOTATION/jespinoz/Dropseq/:/usr/local/devel/ANNOTATION/jespinoz/Dropseq/Drop-seq_tools-1.13/
(mage_env) -bash-4.1$ conda info
active environment : mage_env
active env location : /usr/local/devel/ANNOTATION/jespinoz/anaconda/envs/mage_env
shell level : 1
user config file : /home/jespinoz/.condarc
populated config files : /home/jespinoz/.condarc
conda version : 4.5.11
conda-build version : not installed
python version : 3.6.2.final.0
base environment : /usr/local/devel/ANNOTATION/jespinoz/anaconda (writable)
channel URLs : https://conda.anaconda.org/ursky/linux-64
https://conda.anaconda.org/ursky/noarch
https://conda.anaconda.org/bioconda/linux-64
https://conda.anaconda.org/bioconda/noarch
https://conda.anaconda.org/conda-forge/linux-64
https://conda.anaconda.org/conda-forge/noarch
https://repo.anaconda.com/pkgs/main/linux-64 …Run Code Online (Sandbox Code Playgroud) 我正在尝试为时间序列中的数据创建热图(最终创建散点图)。我想以一种显示它们在线性时间轴上的方式来定向它们。
如何使用matplotlib Affine2D或scipy.ndimage.affine_transform实现这一目标?理想情况下,我希望能够调整以下角度:(1)时间轴的角度(例如,在示例1中,其中T = 1,T = 2,T = 3);(2)热图与(1)中的线相交的角度
我发现的示例取决于im = ax.imshow我的示例不是哪种情况。
from collections import OrderedDict
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
# Get iris data
X_iris = pd.DataFrame({'sepal_length': {'iris_0': 5.1, 'iris_1': 4.9, 'iris_2': 4.7, 'iris_3': 4.6, 'iris_4': 5.0, 'iris_5': 5.4, 'iris_6': 4.6, 'iris_7': 5.0, 'iris_8': 4.4, 'iris_9': 4.9, 'iris_10': 5.4, 'iris_11': 4.8, 'iris_12': 4.8, 'iris_13': 4.3, 'iris_14': 5.8, 'iris_15': 5.7, 'iris_16': 5.4, 'iris_17': 5.1, 'iris_18': 5.7, 'iris_19': …Run Code Online (Sandbox Code Playgroud) python ×9
matplotlib ×3
plot ×3
bayesian ×2
graph ×2
networkx ×2
pymc3 ×2
string ×2
animation ×1
conda ×1
dendrogram ×1
extract ×1
install ×1
list ×1
lowercase ×1
malformed ×1
matrix ×1
probability ×1
scikit-learn ×1
scipy ×1
split ×1
statistics ×1
tensorflow ×1
uppercase ×1