小编nov*_*aly的帖子

AttributeError:尝试在 python 中运行 sqlalchemy 来管理我的 SQL 数据库时,“Engine”对象没有属性“execute”

我有以下代码行不断给我一个错误,即引擎对象没有对象执行。我认为我一切都对,但不知道接下来会发生什么。似乎其他人也遇到了这个问题,重新启动他们的笔记本电脑就可以了。我正在使用 Pycharm 并已重新启动但没有任何解决方案。任何帮助是极大的赞赏!

import pandas as pd
from sqlalchemy import create_engine, text
import sqlalchemy
import pymysql


masterlist = pd.read_excel('Masterlist.xlsx')

user = 'root'
pw = 'test!*'
db = 'hcftest'

engine = create_engine("mysql+pymysql://{user}:{pw}@localhost:3306/{db}"
                           .format(user=user, pw=pw, db=db))


results = engine.execute(text("SELECT * FROM companyname;"))

for row in results:
    print(row)
Run Code Online (Sandbox Code Playgroud)

python mysql sql sqlalchemy

19
推荐指数
2
解决办法
4万
查看次数

总结前10行的数据帧

我想知道如何从任何点总结10行数据帧.

我尝试使用滚动(10,window = 1).sum(),但第一行应该总结下面的10行.与cumsum()类似的问题

所以,如果我的数据框只是A列,那么id就像输出B.

    A   B
0   10  550
1   20  650
2   30  750
3   40  850
4   50  950
5   60  1050
6   70  1150
7   80  1250
8   90  1350
9   100 1450
10  110 etc
11  120 etc
12  130 etc
13  140 
14  150 
15  160 
16  170 
17  180 
18  190 
Run Code Online (Sandbox Code Playgroud)

这类似于在excel中执行此操作并将其复制下来

Excel示例:

Excel示例

python numpy python-3.x pandas

6
推荐指数
1
解决办法
71
查看次数

将词典添加为数据框中的新行

我有一个函数返回键和结果的字典.

我想创建一个循环不同值的新函数.每个值都会产生一个不同结果但具有相同键的新字典.

我想让这个函数创建一个数据帧,并且每次迭代通过循环,索引(或第一列)被设置为我的循环的i值,行将是结果字典..

字典看起来像 {key1: 46, key2:100,key3:200}

start = 10
stop = 100
step = 10
Run Code Online (Sandbox Code Playgroud)

最终结果如下:

    key1  key2  key3
10   46   100    200
20   50    75     60
30   80     2     10
40   100    50     6
50   10     8      33
etc...
Run Code Online (Sandbox Code Playgroud)

python dictionary dataframe python-3.x pandas

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

在 Plotly Python 中添加辅助轴

我正在使用 Dash 图形对象,而且我对它还很陌生。我试图传入一个图表,该图表在同一个图形上有 2 个散点图和一个条形图,但我希望条形图(绿色)位于它自己的第二个 y 轴上,因此它看起来比这里更好:

在此处输入图片说明

现在,从我的理解对短跑,我要传递一个go.Figure()对象,所以我定义了一个函数datalayout。我在 plotly 文档中看到你可以使用 plotly express add secondary axis 但我不确定如何在我的框架工作中做到这一点。任何帮助将不胜感激!

这是我的代码:

def update_running_graph(n_intervals):
    df = pd.read_csv(filename)

    trace1 = go.Scatter(x=df['Timestamp'],
                        y=df['CLE'],
                        name='Crude',
                        mode='lines+markers')
    trace2 = go.Scatter(x=df['Timestamp'],
                        y=df['y_pred'],
                        name='Model',
                        mode='lines+markers')
    trace3 = go.Bar(x=df['Timestamp'],
                    y=df['ModelDiff'],
                    name='Diff',
                    )
    data = [trace1, trace2,trace3]
    layout = go.Layout(title='CLE vs Model')
    return go.Figure(data=data, layout=layout)
Run Code Online (Sandbox Code Playgroud)

python graph plotly plotly-dash

4
推荐指数
2
解决办法
2万
查看次数

Python - 运行平均值如果数字大于0

我的数据框中有一个由数字组成的列.我喜欢在数据框中有另一个列,它采用大于0的运行平均值,理想情况下我可以在没有迭代的情况下进行numpy.(数据很大)

Vals    Output
-350    
1000    1000
1300    1150
1600    1300
1100    1250
1000    1200
450     1075
1900    1192.857143
-2000   1192.857143
-3150   1192.857143
1000    1168.75
-900    1168.75
800     1127.777778
8550    1870
Run Code Online (Sandbox Code Playgroud)

码:

list =[-350,    1000,   1300,   1600,   1100,   1000,   450,
    1900,   -2000,  -3150,  1000,   -900,   800,    8550]
    df = pd.DataFrame(data = list)
Run Code Online (Sandbox Code Playgroud)

python numpy dataframe python-3.x pandas

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

计算范围内的项目

p1 = (0, 10, 1)
p2 = (0, -20, -2)
p3 = (0,10,2)
Run Code Online (Sandbox Code Playgroud)

嗨,

我有上面的代码,我只想快速计算每个范围内有多少项而不迭代它?(它是一些嵌套循环的一部分).所以p1会返回9.

还有更好的方法将这些变量传递给范围函数吗?

现在我起诉:

range(p1[0], p1[1], p1[2])
Run Code Online (Sandbox Code Playgroud)

python range python-3.x

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

将DateTime索引值转换为索引号

如果我有一个具有日期时间索引的数据框,并且通过使用series.first_valid_index获得了第一个有效索引-它返回第一个非nan的日期时间,这是我要查找的内容:

有没有一种方法来获取datetime值所对应的索引号。例如,它返回2018-07-16,但我想知道那是数据帧的第18行吗?

如果不是,是否有一种方法可以计算从数据帧开头到该索引值的行?

python datetime numpy dataframe pandas

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