小编use*_*076的帖子

python 多处理 starmap 与 apply_async,哪个更快?

假设我有这两种方法来完成同一任务:

from multiprocessing import Pool
pool = Pool(4)

def func(*args):
    # do some slow operations
    return something

dates = ['2011-01-01', ' 2011-01-02', ... , '2017-01-01']
other_args = [1, 2, 3, 'c', 'test', 'pdf')]
# approach 1:
res = [pool.apply_async(func, [day] + other_args) for day in dates]
list_of_results = [x.get() for x in res]

# approach 2: create an iterable of iterables
args = [[day] + other_args for day in dates]
list_of_results = pool.starmap(func, args)
Run Code Online (Sandbox Code Playgroud)

我意识到 apply_async 立即返回,但是,如果 func 尚未完成运行, x.get() …

python multiprocessing pandas

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

气流使用与父 dag 不同的 schedule_interval 创建 subdag

我一直在尝试设置一个具有两个 subdag 的父 dag,由于它们各自的数据源可用,每个 subdag 的运行时间略有不同。然而,subdags 似乎立即与父 dag 一起启动,无视他们自己的 schedule_intervals。有人知道这是否是气流的默认行为吗?有没有办法在不将它们变成独立的 dag 或使用传感器的情况下解决这个问题?

airflow airflow-scheduler

4
推荐指数
1
解决办法
4573
查看次数

将Excel数组常量传递给VBA函数

我有一个值是数组常量的单元格,例如,单元格A1设置为 ={1,2,3,4,5,6}

然后,我在VBA中定义了一个函数:

Function MyFunc(Data)
MyFunc = Data.Rows.Count
End Function
Run Code Online (Sandbox Code Playgroud)

我希望函数在可能的情况下返回数组的长度(6)=MyFunc(A1),但是使用调试器,我发现函数接收的'Data'变量仅包含该数组的第一个元素。 Data.Rows.Count评估为1并TypeName(Data)评估为“范围”

excel vba

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

pandas 通过增加最后一个值来回填 NaN

我有一个数据框:

            A    B    C
Timestamp
    1      NaN   NaN   NaN
    2      NaN   NaN   NaN
    3      NaN   NaN    5
    4      NaN   NaN    4
    5      NaN    3     3
    6      NaN    2    NaN
    7       3     1    NaN
    8       2    NaN   NaN
    9       1    NaN   NaN
Run Code Online (Sandbox Code Playgroud)

我想通过增加每列中的最后一个可用值来回填它,因此它看起来像这样:

            A    B    C
Timestamp
    1       9    7    7
    2       8    6    6
    3       7    5    5
    4       6    4    4
    5       5    3    3
    6       4    2    NaN
    7       3    1    NaN
    8       2    NaN  NaN
    9       1 …
Run Code Online (Sandbox Code Playgroud)

python pandas

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