我正在构建一个新的方法来解析一个DataFrame与Vincent兼容的格式.这需要一个标准Index(文森特不能解析MultiIndex).
有没有办法检测熊猫DataFrame是否有MultiIndex?
In: type(frame)
Out: pandas.core.index.MultiIndex
Run Code Online (Sandbox Code Playgroud)
我试过了:
In: if type(result.index) is 'pandas.core.index.MultiIndex':
print True
else:
print False
Out: False
Run Code Online (Sandbox Code Playgroud)
如果我尝试没有引用,我得到:
NameError: name 'pandas' is not defined
Run Code Online (Sandbox Code Playgroud)
任何帮助赞赏.
(一旦我有了MultiIndex,我就会重置索引并将两列合并为表示阶段的单个字符串值.)
我熟悉Flask构建简单的webapps并使用jinja2作为模板引擎.但是,我想尝试将React.js作为前端.
我看到的将React.js与Python后端一起使用的示例基本上使用它作为API服务器来调用需要包含在React视图中的json.但是,这如何与Flask的身份验证模型和库一起使用?你可以在同一个模板中混合搭配jinja2和React.js来访问会话数据吗?
任何指示或经验,以帮助开始将不胜感激.
我发现这个mpld3包非常出色,可以将matplolib绘图导出为HTML并通过flask应用程序显示.
每个导出都附带了很多JS,如果你想在一个页面中显示多个图表,这似乎是不必要的重复.但是我不熟悉JS以提取相关组件然后循环遍历它们.该.fig_to_dict方法提供了必要的JSON来显示每个图表,但后来我想知道需要JS /模板工作来依次显示每个图表.
我认为只是将每个绘图堆叠成一个大图,但我想将图表布局在单独的DIV中,因此这不是正确的解决方案.
我想我可以看到JS正在做什么来显示它们但我没有足够的知识来修改功能以适应目的.
我没有包含代码,因为我期望这只与有mpld3经验的人有关,但如果需要可以提供一些示例代码.
示例HTML输出mpld3.fig_to_html(fig, template_type="simple"):
<script type="text/javascript" src="http://d3js.org/d3.v3.min.js"></script>
<script type="text/javascript" src="http://mpld3.github.io/js/mpld3.v0.1.js"></script>
<style>
</style>
<div id="fig136845463888164451663379"></div>
<script type="text/javascript">
var spec136845463888164451663379 = { <snip JSON code> };
var fig136845463888164451663379 = mpld3.draw_figure("fig136845463888164451663379", spec136845463888164451663379);
</script>
Run Code Online (Sandbox Code Playgroud)
我认为这就像从模板头链接两个核心脚本然后为每个JSON导出创建一个新脚本一样简单.但这对我没有用.
抱歉,我还没有代码示例,因为我正在尝试弄清楚我的想法是否可以实现。
我正在编写一个 Django 应用程序来管理 Celery 任务。我用于django-celery-beat计划任务,但我想要一个类似的管理界面来启动临时任务,并使用接受参数的表单。我希望它与 IP 一起位于管理部分,因为这就是应用程序所做的全部工作;目前没有其他意见。
所有文档都ModelAdmin基于模型的自定义字段,但我认为该对象不需要存储在模型中,因为它们是瞬态的,并且数据将由 Celery 任务保存。据我从文档中了解到,您无法在不尝试模型的情况下注册自定义管理视图。
我正在寻找的是一个不与模型绑定的自定义视图,这样我就可以在管理部分为这些管理命令创建自定义表单。
我曾经有过的想法:
managed = False创建一个虚拟模型MetaModelForm任何指示表示赞赏。我将测试所有合理的答案并选择最好的作为正确答案,但会对所有回复投票。
编辑:@dejavu_cmd_delt 提出了Flower的很好建议,但如果可能的话,我想将其全部集成到该admin部分中。
我正在尝试使用Bokeh的'create_html_snippet'方法在网页中展示pandas/seaborn图.
作为测试,我在这里克隆了@ rpazyaquian的演示回购 - https://github.com/rpazyaquian/bokeh-flask-tutorial/wiki/Rendering-Bokeh-plots-in-Flask.不幸的是,由于创建了回购,因此散景的变化不起作用.
页面上的主要HTML输出完全相同,但显然唯一的散文文件名不同.
唯一的区别在于散景生成的*.embed.js文件.如下面的摘录所示,该文件中的主机/静态路径变量似乎无法正常工作.使用内置的Flask开发服务器和gunicorn进行测试.
这是@ rpazyaquian的Heroku网站上工作版的顶部部分:
var host = "";
var staticRootUrl = "http://localhost:5006/bokeh/static/";
if (host!=""){
staticRootUrl = host + "/static/";
var bokehJSUrl = window.location.protocol + "//" + staticRootUrl + "js/bokeh.js";
}
else {
bokehJSUrl = staticRootUrl +"js/bokeh.js";
}
Run Code Online (Sandbox Code Playgroud)
这是使用Heroku 0.4的无法工作的本地版本:
var host = "";
var staticRootUrl = "http://localhost:5006/bokeh/static/";
if (host!=""){
staticRootUrl = "//" + host + "/bokehjs/static/";
var bokehJSUrl = staticRootUrl + "js/bokeh.js";
}
else {
bokehJSUrl = staticRootUrl +"js/bokeh.js";
}
Run Code Online (Sandbox Code Playgroud)
明显的问题:
我正在为我的公司构建一个内部Webapp,供我使用,并希望使用我们的Google Apps域来管理来自我们公司域用户名(本问题其余部分为example.com)的访问。
我正在使用:
Django==1.9.5
python-social-auth==0.2.19
+ dependencies
Run Code Online (Sandbox Code Playgroud)
通过阅读其他SO问题,我发现可以通过以下设置使用Goog“托管域”(hd)参数:
SOCIAL_AUTH_GOOGLE_OAUTH2_AUTH_EXTRA_ARGUMENTS = {'hd': 'example.com'}
Run Code Online (Sandbox Code Playgroud)
该参数已成功添加到初始请求中,可以在授予访问权限之前在URL中看到它。
但是,它没有按我预期的那样工作。我已经能够通过两个非公司的电子邮件地址成功进行身份验证。
我是不是误解了“ hd =”参数的工作原理,还是需要限制通过Google Admin仪表板上其他位置的应用程序访问?还是OAuth2流不支持它?
在此先感谢您的帮助。
版本:Django 1.10和Postgres 9.6
我试图在没有往返Python的情况下修改嵌套的JSONField密钥.原因是避免竞争条件和多个查询用不同的更新覆盖相同的字段.
我试图链接这些方法,希望Django可以进行单个查询,但它被记录为两个:
原始字段值(仅演示,实际数据更复杂):
from exampleapp.models import AdhocTask
record = AdhocTask.objects.get(id=1)
print(record.log)
> {'demo_key': 'original'}
Run Code Online (Sandbox Code Playgroud)
查询:
from django.db.models import F
from django.db.models.expressions import RawSQL
(AdhocTask.objects.filter(id=25)
.annotate(temp=RawSQL(
# `jsonb_set` gets current json value of `log` field,
# take a the nominated key ("demo key" in this example)
# and replaces the value with the json provided ("new value")
# Raw sql is wrapped in triple quotes to avoid escaping each quote
"""jsonb_set(log, '{"demo_key"}','"new value"', false)""",[]))
# Finally, …Run Code Online (Sandbox Code Playgroud) 有没有办法查询一个对象,从一个JSONField字段中“提取”一段嵌套的数据,然后让它作为 Queryset 的每个实例上的自定义临时字段可用?
在我的用例中,我将来自 Twitter 的 API 的溢出元数据存储在一个data字段中以供以后使用。我希望能够访问嵌套的领域followers_count内TwitterPost.data。
我已经阅读了有关如何根据嵌套值进行过滤的文档,但没有阅读有关如何在生成查询集时将其提取为临时字段的文档。
同样,我已经阅读了annotate有关创建自定义临时字段的方法的文档,但示例都在简单字段上使用聚合函数,因此不是JSONFields.
在此先感谢您的任何建议。
示例模型:
from django.contrib.postgres.fields import JSONField
class TwitterPost(models.Model):
id = models.IntegerField()
data = JSONField()
Run Code Online (Sandbox Code Playgroud)
该data字段的示例 JSON 值:
{
'followers_count': 7172,
"default_profile_image": false,
"profile_text_color": "000000"
}
Run Code Online (Sandbox Code Playgroud)
我希望能够做的伪代码:
TwitterPost.objects.annotate(followers_count=instance.data.followers_count)
Run Code Online (Sandbox Code Playgroud) python ×6
django ×4
flask ×2
postgresql ×2
bokeh ×1
celery ×1
javascript ×1
json ×1
jsonb ×1
matplotlib ×1
pandas ×1
reactjs ×1