小编tex*_*exb的帖子

简单演示了递归使用pyparsing的indentedBlock

我试图indentedBlock在pyparsing中使用(对我来说看起来很棒)来剖析一些嵌套的缩进,但是我在API参考中理解它的描述(或http://pyparsing.wikispaces.com下的更具体的例子)或提到如何用pyparsing解析缩进和dedents?).

有人可以指点我简要演示或解释如何indentedBlock递归使用,或者在这里提供一个?例如,我们如何将YAMLish转换为...

- a1_el
    - b1_el
        x1_attr: 1
        x2_attr: 2
    - b2_el
        - c1_el # I am a comment
    - b3_el
        x1_attr: 1 
Run Code Online (Sandbox Code Playgroud)

...进入一些XML表示,如...

<a1_el>
    <b1_el x1_attr="1" x2_attr="2"/>
    <b2_el>
        <c1_el/><!-- I am a comment -->
    </b2_el>
    <b3_el x1_attr="1"/>
</a1_el>
Run Code Online (Sandbox Code Playgroud)

......跟indentedBlock?(另外:在什么实际情况下我需要indentStack参数的不同otpions ?).非常感谢!

python pyparsing

9
推荐指数
1
解决办法
753
查看次数

table()函数是否有一般反转?

我知道一点点编程允许将固定维度的频率表(例如table()返回)转换回观察数据.所以目的是转换频率表,例如这个......

(flower.freqs <- with(iris,table(Petal=cut(Petal.Width,2),Species)))
          Species
Petal          setosa versicolor virginica
  (0.0976,1.3]     50         28         0
  (1.3,2.5]         0         22        50
Run Code Online (Sandbox Code Playgroud)

...返回到一个data.frame()行号,该行号对应于输入矩阵的数字之和,而单元格值是从输入维度获得的:

     Petal Species
1 (0.0976,1.3]  setosa
2 (0.0976,1.3]  setosa
3 (0.0976,1.3]  setosa
# ... (150 rows) ...
Run Code Online (Sandbox Code Playgroud)

通过一些修修补补,我构建了一个粗略的原型,它也应该消化更高维度的输入:

tableinv <- untable <- function(x) {
    stopifnot(is.table(x))
    obs <- as.data.frame(x)[rep(1:prod(dim(x)),c(x)),-length(dim(x))-1]
    rownames(obs) <- NULL; obs
}

> head(tableinv(flower.freqs)); dim(tableinv(flower.freqs))
     Petal Species
1 (0.0976,1.3]  setosa
2 (0.0976,1.3]  setosa
3 (0.0976,1.3]  setosa
4 (0.0976,1.3]  setosa
5 (0.0976,1.3]  setosa
6 (0.0976,1.3]  setosa
[1] …
Run Code Online (Sandbox Code Playgroud)

r

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

如何将审查数据输入R的生存模型?

我试图在订阅上模拟客户生命周期.随着数据被审查,我将使用R的生存包来创建生存曲线.

原始订阅数据集看起来像这样..

id  start_date  end_date
1   2013-06-01  2013-08-25
2   2013-06-01  NA
3   2013-08-01  2013-09-12
Run Code Online (Sandbox Code Playgroud)

我操纵看起来像这样..

id  tenure_in_months status(1=cancelled, 0=active)
1   2                1
2   ?                0
3   1                1
Run Code Online (Sandbox Code Playgroud)

..为了养活生存模型:

obj <- with(subscriptions, Surv(time=tenure_in_months, event=status, type="right"))
fit <- survfit(obj~1, data=subscriptions)
plot(fit)
Run Code Online (Sandbox Code Playgroud)

我应该在tenure_in_months变量中为被处理的案例提供什么,即今天订阅仍然有效的情况 - 它应该是到今天为止的任期还是应该是NA?

r survival-analysis

6
推荐指数
2
解决办法
7244
查看次数

为什么我似乎无法将标签放入 Kivy 应用程序中的 StackLayout(或其他布局)中?

理论上,将 Kivy- Label放入堆栈布局(或其他布局)应该是最简单、最常见的事情 - 但它目前让我陷入绝望。以下语法显示一个普通的单按钮应用程序(在 Kivy 1.8 或 1.9、Win 7 下),直到我取消注释 Label-generateing line,该行始终失败并显示诸如AttributeError: 'LabelPygame' object has no attribute 'bind'或 之类的消息AttributeError: 'LabelSDL2' object has no attribute 'bind'(在 中layout.py):

from kivy.app import App
from kivy.uix.button import Button
from kivy.core.text import Label
from kivy.uix.stacklayout import StackLayout

class TestApp(App):
    def build(self):
        mylayout = StackLayout(orientation='lr-tb')
        mylayout.add_widget(Button(text='This button can always be rendered.'))
        # mylayout.add_widget(Label(text='This label seems to cause trouble.'))
        return mylayout

TestApp().run()
Run Code Online (Sandbox Code Playgroud)

我有一种预感,我忽略了一些非常明显或愚蠢的东西,但无法理解它是什么。基于Builderand的替代调用 …

python kivy

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

标签 统计

python ×2

r ×2

kivy ×1

pyparsing ×1

survival-analysis ×1