小编Con*_*ino的帖子

在seaborn facetgrid的各个方面设置轴限制

我正在尝试将每个方面的x轴限制设置为Seaborn facetgrid distplot的不同值.我知道我可以通过g.axes访问子图中的所有轴,所以我试图迭代它们并设置xlim:

g = sns.FacetGrid(mapping, col=options.facetCol, row=options.facetRow, col_order=sorted(cols), hue=options.group)
g = g.map(sns.distplot, options.axis)   

for i, ax in enumerate(g.axes.flat): # set every-other axis for testing purposes
        if i % 2 == 0[enter link description here][1]:
            ax.set_xlim(-400,500)
        else:
            ax.set_xlim(-200,200)
Run Code Online (Sandbox Code Playgroud)

但是,当我这样做时,所有轴都设置为(-200,200)而不是每个其他方面.

我究竟做错了什么?

python facet seaborn

10
推荐指数
2
解决办法
5644
查看次数

访问seaborn distplot中的bin计数

在pyplot的hist()函数中,我们能够访问直方图箱的值(通过返回n); 是否可以从Seaborn的distplot访问相同的信息?Seaborn只返回一个轴对象.

最后,我想在直方图的顶部并置一个线图,它总结了箱子中的计数.

python matplotlib histogram seaborn

8
推荐指数
1
解决办法
3479
查看次数

Python pandas函数应用于所有行的成对组合

我正在尝试在pandas数据帧中的所有成对行组合上运行函数(相关):

stats = dict()
for l in itertools.combinations(dat.index.tolist(),2):
    stats[l] = pearsonr(dat.loc[l[0],:], dat.loc[l[1],:]) # stores (r, p)
Run Code Online (Sandbox Code Playgroud)

当然这很慢,我想知道如何通过使用类似的东西来做同等的事情apply().

注意:我知道我可以直接找到数据帧与pandas corr()函数的相关性,但它不会返回相关的p值(我需要进行过滤)

python apply correlation pandas

8
推荐指数
1
解决办法
1306
查看次数

R 和 sklearn 随机森林回归中的特征重要性结果不同

我正在研究回归问题,并且一直在使用R randomForest包以及 python sklearn 随机森林回归估计器。

R 包可以通过两种不同的方式计算特征重要性得分:

  1. 第一个度量是根据排列 OOB 数据计算的:对于每棵树,记录数据的袋外部分的预测误差(分类错误率,回归 MSE)。然后在排列每个预测变量后做同样的事情。然后将两者之间的差异在所有树上取平均值,并通过差异的标准偏差进行归一化。

  2. 第二个度量是对变量进行拆分后节点杂质的总减少量,对所有树求平均值。对于分类,节点杂质是通过基尼指数来衡量的。对于回归,它是通过残差平方和 (RSS) 来衡量的。

而 sklearn 仅以后一种方式执行此操作(有关详细信息,请参见此处)。

我对比较两种实现中的方法 #2 很感兴趣,所以我做了以下工作:

电阻

iteration_count <- 3
seeds <- seq(1,iteration_count,1)
tree_count <- 500

for(i in 1:iteration_count) {
  set.seed(seeds[[i]])
  rfmodels[[i]]<- randomForest(y ~ .,X,ntree=tree_count,importance=TRUE,na.action=na.omit)
}

# convert all iterations into matrix form
imp_score_matrix <- do.call(cbind, lapply(models_selected, function(x) { importance(x, scale=T, type=1)[,1] }))

# Calculate mean and s.d. for importance ranking of each feature based on a matrix of feature importance …
Run Code Online (Sandbox Code Playgroud)

python regression r random-forest scikit-learn

5
推荐指数
0
解决办法
1839
查看次数

Seaborn 点图美学

我正在尝试调整seaborn pointplot中点和线的大小

在其他绘图类型(例如lmplot)中,我们可以通过 options 来做到这一点scatter_kws=None, line_kws=None;但是它看起来不像 pointplot 有那些。

无论如何传递这些选项似乎不起作用;例如

g = sns.FacetGrid(long_df, col=options.group, sharey=options.sharey, sharex=options.sharex, margin_titles=True, col_order = order)
g = g.map(sns.pointplot,options.time,'Abundance','OTU', palette='deep', scatter_kws={'alpha':0.3}).
Run Code Online (Sandbox Code Playgroud)

此外,有没有办法单独调整误差线的美观度?

python matplotlib seaborn

5
推荐指数
0
解决办法
829
查看次数

将表情符号代码导入jupyter笔记本

Jupyter笔记本支持markdown单元,但是它似乎不支持表情符号代码。我想一种方法可能是使用html导入像fontawesome这样的图标

有人有解决方法吗?

编辑:直接在jupyter Github上询问#2199

emoji jupyter-notebook

5
推荐指数
1
解决办法
3845
查看次数

用于从 S3 下载文件的模拟 boto3 响应

我有使用boto3从 S3 存储桶下载文件的代码。

# foo.py
def dl(src_f, dest_f):
  s3 = boto3.resource('s3')
  s3.Bucket('mybucket').download_file(src_f, dest_f)
Run Code Online (Sandbox Code Playgroud)

我现在想编写一个dl()使用 pytest的单元测试,并使用 botocore 中提供的存根模拟与 AWS 的交互。

@pytest.fixture
def s3_client():
    yield boto3.client("s3")

from foo import dl
def test_dl(s3_client):

  with Stubber(s3_client) as stubber:
    params = {"Bucket": ANY, "Key": ANY}
    response = {"Body": "lorem"}
    stubber.add_response(SOME_OBJ, response, params)
    dl('bucket_file.txt', 'tmp/bucket_file.txt')
    assert os.path.isfile('tmp/bucket_file.txt')
Run Code Online (Sandbox Code Playgroud)

我不确定对此的正确方法。如何添加bucket_file.txt到存根响应中?我需要什么对象add_response()(显示为SOME_OBJ)?

python amazon-s3 amazon-web-services botocore boto3

3
推荐指数
1
解决办法
4708
查看次数

seaborn facetgrid pointplot问题

我正在尝试用点图创建一个seaborn facetgrid.

我的数据是:

DaysIn  GroupUID    OTU_id  value
1   3.A 1   33
1   3.B 1   73.17647059
1   4.A 1   48.12903226
1   4.B 1   39.875
2   3.A 1   23.76470588
2   3.B 1   43.71428571
2   4.A 1   51.73333333
2   4.B 1   42.06896552
3   3.A 1   2
3   3.B 1   10.71428571
3   4.A 1   12.93333333
3   4.B 1   15
4   4.A 1   11.53333333
4   4.B 1   27.86206897
5   3.A 1   1.882352941
5   3.B 1   1.857142857
5   4.A 1   41.9
5   4.B 1   46.28571429
6 …
Run Code Online (Sandbox Code Playgroud)

plot facet pandas seaborn

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

循环ajax调用以填充多个div

我的页面上有两个div

<div id="1"></div>
<div id="2"></div>
Run Code Online (Sandbox Code Playgroud)

我正试图动态填写以下php调用.

<script>
    var queries = ["SELECT * from table1", "SELECT * from table2"]

    for (var i = 0; i < queries.length; i++) {
        $.ajax({
            url: "querySQL.php",
            type: "GET",
            cache: false,
            data: {query: queries[i]},
            success: function(data) {
                $("#" + i).html(data);
            }
        });
    }
</script>
Run Code Online (Sandbox Code Playgroud)

看起来它正在循环遍历查询,但是它"擦除"第一个查询,当我查看页面时,只剩下第二个查询的结果.我究竟做错了什么?

html javascript php ajax jquery

0
推荐指数
1
解决办法
913
查看次数