小编Ron*_*Ron的帖子

如何在Python中的滚动平均计算中忽略NaN

对于时间序列销售预测任务,我想创建一个代表过去 3 天平均销售额的功能。当我想预测未来几天的销售额时遇到问题,因为这些数据点没有销售数据(NaN 值)。Pandas 提供rolling_mean(),但当窗口中的任何数据点为 NaN 时,该函数会导致 NaN 输出。

我的数据:

Date    Sales
02-01-2013  100.0
03-01-2013  200.0
04-01-2013  300.0
05-01-2013  200.0
06-01-2013  NaN
Run Code Online (Sandbox Code Playgroud)

使用窗口为 2 的 pd.rolling_mean() 后的结果:

Date    Rolling_Sales
02-01-2013  NaN
03-01-2013  150.0
04-01-2013  250.0
05-01-2013  250.0
06-01-2013  NaN
Run Code Online (Sandbox Code Playgroud)

期望的结果:

Date    Rolling_Sales
02-01-2013  NaN
03-01-2013  150.0
04-01-2013  250.0
05-01-2013  250.0
06-01-2013  200.0
Run Code Online (Sandbox Code Playgroud)

因此,如果包含 NaN,我想忽略它并取窗口中所有其他数据点的平均值。

python time-series nan pandas

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

无法在Windows计算机上使用sqlalchemy连接到本地mysql数据库

我正在尝试使用sqlalchemy连接到Windows计算机上的本地mysql数据库。它可以使用pymysql,但不能与sqlalchemy一起使用。

代码sqlalchemy:

engine = create_engine('mysql+mysqldb://root:mypass@localhost/classicmodels')
engine.connect()
Run Code Online (Sandbox Code Playgroud)

给出错误:

OperationalError: (_mysql_exceptions.OperationalError) (1193, "Unknown system variable 'tx_isolation'")
Run Code Online (Sandbox Code Playgroud)

使用pymysql的工作代码:

connection = pymysql.connect(host='localhost',
                             user='root',
                             password = 'mypass',
                             db = 'classicmodels')

cursor = connection.cursor()

cursor.execute('select * from customers')
mydata = cursor.fetchall()
mydata = pd.DataFrame(list(mydata))
mydata.head(5)
Run Code Online (Sandbox Code Playgroud)

python sql database-connection sqlalchemy pymysql

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