【问题标题】:pandas how to write a query熊猫如何编写查询
【发布时间】:2018-10-13 04:50:28
【问题描述】:

基于此 pandas get column average/mean

我可以像这样创建一个简单的计算字段: 我的查询

df = pd.read_sql("select range_start, range_end  from "+table+" group by  range_start, range_end", conn)

创建此表:

Start   Stop
4385159 4499467
4175786 4352309
342426  354137
5591040 5600392

我想要做的是注入一个具有差异的列,我可以这样做:

df2['Diff'] = df2['Stop'] - df2['Start']

现在我的桌子是这样的:

Start   End      Diff
4385159 4499467 114308
4175786 4352309 176523
342426  354137  11711

我的问题是如何编写一个返回结果的查询:

df = pd.read_sql("select Diff  from "+table+" where Diff < Xnumber group by  Diff", conn)

我想我需要在 jupyter (pandas) 的查询中放置一个查询。做这样的事情:

df = pd.read_sql("select (df2['Stop'] - df2['Start']) as df2['Diff'] where (df2['Stop'] - df2['Start']) < Xnumber group by (df2['Stop'] - df2['Start'])",conn)

^ 那没用,但你明白了

【问题讨论】:

    标签: sql python-2.7 pandas jupyter-notebook


    【解决方案1】:

    我可能遗漏了一些东西,但是您可以直接在 pandas 中创建新列,而不进行任何查询吗?

    df['Diff'] = df2['Stop'] - df2['Start']
    

    【讨论】:

    • 可行,但我试图将其用作查询的一部分,以便添加条件,请参阅下面的答案。不过谢谢!
    【解决方案2】:

    知道了:

    df6 = pd.read_sql("select (Start - Stop) as Diff from "+table+" where <condition>",conn)
    

    【讨论】:

      猜你喜欢
      • 2023-03-21
      • 1970-01-01
      • 1970-01-01
      • 2019-10-06
      • 2020-10-04
      • 2017-12-23
      • 2016-01-17
      • 2011-03-22
      • 2012-12-13
      相关资源
      最近更新 更多