小编use*_*395的帖子

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

与 utcfromtimestamp 相反的函数?

的相反函数是什么utcfromtimestamp()

timestamp()显然没有考虑时区,如以下示例所示:

import pandas as pd
import datetime
start = pd.datetime(2000, 1, 1, 0, 0, 0)
asFloat = start.timestamp()
startDifferent = datetime.datetime.utcfromtimestamp(asFloat)
startDifferent
Out[8]: datetime.datetime(1999, 12, 31, 23, 0)
Run Code Online (Sandbox Code Playgroud)

python datetime

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

将多处理作业的中间结果转储到文件系统并稍后继续处理

我有一份使用该multiprocessing包并通过以下方式调用函数的工作

resultList = pool.map(myFunction, myListOfInputParameters)

输入参数列表中的每个条目都是独立于其他条目的。

这项工作将运行几个小时。出于安全原因,我想存储定期的结果,例如每小时一次。

当作业被中止并且我想根据最后一个可用备份重新启动它时,我该如何执行此操作并能够继续处理?

python python-multiprocessing

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

如何检测熊猫的上升和下降趋势?

对于使用下面的代码生成的图,我想通过 Pandas 逻辑生成一个信号。

当曲线比上一个局部最小值高(或更多)+3 个点时,输出信号应从 -4 变为 -2。当曲线比上一个局部最大值低(或少)2 个点时,它应该从 -2 变回 -4。

图 1 显示了由以下代码生成的曲线。图 2 大致显示了输出信号的外观。

情节 1: 地块 1

情节 2: 地块 2

编码:

import matplotlib

matplotlib.use('QT5Agg')
import matplotlib.pyplot as plt
import numpy as np

a = np.arange(5)
b = np.arange(5, -4, -1)
c = np.arange(-4, 7, .5)
d = np.arange(7, 2, -1)
e = np.arange(2, 6, .2)
f = np.arange(6, -3, -1)
g = np.arange(-3, 2, .25)

r1 = np.append(a, b)
r2 = np.append(r1, c)
r3 = np.append(r2, d)
r4 = …
Run Code Online (Sandbox Code Playgroud)

python numpy pandas

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

__str__() 实现的正确自动生成也适用于 sqlalchemy 类?

我想很好地显示/打印我的 sqlalchemy 课程。

有没有办法__str__()在 python 中自动生成实现? 答案您可以使用 vars, dir, ...:... 来迭代实例属性,这在简单类的情况下会有所帮助。

当我尝试将它应用于一个Sqlalchemy类时(就像 Python 的 SQLAlchemy 的介绍性教程中的那个- 见下文),我得到 - 除了成员变量之外,还有以下条目作为成员变量:

_sa_instance_state=<sqlalchemy.orm.state.InstanceState object at 0x000000004CEBCC0>

如何避免此条目出现在__str__表示中?

为了完整起见,我也将链接的stackoverflow问题的解决方案放在下面。

import os
import sys
from sqlalchemy import Column, ForeignKey, Integer, String
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import relationship
from sqlalchemy import create_engine

Base = declarative_base()

class Person(Base):
    __tablename__ = 'person'
    # Here we define columns for the table person
    # Notice that each column …
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy boilerplate

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

为什么从 np.datetime64 到 float 并返回的转换会导致时间差异?

使用以下代码,在转换回 np.datetime64 后,我得到了两个小时的差异。

我怎样才能避免这种情况?(如果这应该成为一个主题:我目前在中欧)

import pandas as pd
import numpy as np
import datetime

a = np.datetime64('2018-04-01T15:30:00').astype("float")
a
b = np.datetime64(datetime.datetime.fromtimestamp(a))
b

Out[18]: numpy.datetime64('2018-04-01T17:30:00.000000')
Run Code Online (Sandbox Code Playgroud)

python numpy

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

如何将前一行的结果添加到当前行的内容?

import pandas as pd
import numpy as np

df = pd.DataFrame({"a": [7, 2, 3], "b": [4, 5, 6], "c": [100, np.nan, np.NaN]})

df
Out[11]: 
   a  b      c
0  7  4  100.0
1  2  5    NaN
2  3  6    NaN
Run Code Online (Sandbox Code Playgroud)

对于上面的Python pandas DataFrame,我想对行号为零:计算列a和之间的差异b.其结果应添加到列的内容中c并存储在(新)列中d.

对于第一行,在第一步中,行0 /列的内容d应存储在列中c.之后应该应用与之前的行0相同的算法.

执行此操作后,生成的DataFrame将如下所示:

   a  b      c     d
0  7  4  100.0   103.
1  2  5  103.0   100.
2  3  6  100.0    97.
Run Code Online (Sandbox Code Playgroud)

实际上,数据帧比这个小例子有更多的行.因此,快速的计算速度非常重要.

计算这个新数据帧的解决方案怎么样?

python pandas

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

Pycharm:编译 Cython 扩展错误 - 无法执行“gcc”:没有这样的文件或目录

在 Ubuntu 14.04 上,我使用 Pycharm 专业版。当我启动调试会话时,我在 Pycharm 的事件日志中看到以下消息:

Python 调试器扩展可用

Cython 扩展加速 Python 调试

安装 它是如何工作的

单击将Install出现一个弹出窗口,其中包含错误消息:

错误信息

我也在这里描绘了文本,以便其他人更容易找到:

编译 Cython 扩展错误

非零退出代码 (1):

无法执行“gcc”:没有这样的文件或目录

错误:命令“gcc”失败,退出状态为 1

寻找解决方案:

  1. 我根据上面提到的链接手动编译了Cython speedups /usr/bin/python3 /<PYCHARM_INSTALLATION_PATH>/helpers/pydev/setup_cython.py build_ext --inplace:。这成功完成,但对错误消息没有帮助。

  2. 我添加了 python-3.6-dev 存储库: sudo add-apt-repository ppa:deadsnakes/ppa,执行:sudo apt-get update && sudo apt-get dist-upgrade 并安装了 python-3.6-dev:sudo apt-get install python3.6-dev

    它成功完成,但不会更改上面弹出的错误消息。

我还可以检查或执行什么?

编辑 有关 gcc 的安装,如下所示:

user@user-computer:~$ gcc
The program 'gcc' is currently not installed. You can install it by typing:
sudo apt-get install …
Run Code Online (Sandbox Code Playgroud)

python cython pycharm

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

如何获得准周期序列中的最小值?

对于系列

t = [0.1, 1, 2, 3, 0, 1, 2, 3, 4, 5, 0.9, 1, 2]
s = pd.Series(t)
Run Code Online (Sandbox Code Playgroud)

我想获得位置n(和值),其中s.iloc[n]s每次从其最大值返回最小值都为最小值。

所以我想得到这个例子的结果:

position value
0        0.1
4        0
10       0.9
Run Code Online (Sandbox Code Playgroud)

我想有一个基于熊猫的解决方案,因为这个问题只是我要解决的另一个问题的输入。在这种情况下,数据量确实很大。

python group-by pandas pandas-groupby

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