Pandas的麻烦数据框值以及np.沿_轴应用

2024-06-02 07:35:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要迭代pandas数据帧的行。由于“native pandas”迭代相当慢,因为为每一行创建一个Series对象,所以我决定迭代底层的ndarray行。在

用于说明过程的伪代码:

import pandas as pd
import numpy as np

store = pd.HDFStore('example.h5')
df = pandas.store[name]
df = df[10:20]
result = np.apply_along_axis(mapped_function, axis=1, arr=df[['colA', 'colC', 'colG']].values)

问题是有些不可预测,我偶尔会遇到如下错误:

^{pr2}$

在我的例子中,这个错误发生在映射行13之后或映射行14之前。在任何情况下,mapped_function都不会以第14行作为参数执行,但之前失败了。在

但是,如果我在上面的代码中将df = df[10:20]改为df = df[13:20],那么同样的数据也会出现问题行!在

另外,如果我完全避免apply_along_axis并执行python迭代,那么一切都会正常工作:

result = []
for row in df = df[10:20]:
    result += [mapped_function(row)]

这样看来,mapped_function并不是错的,但是{}似乎在经历一个小问题。不幸的是,我没有幸诊断出病因。。。在

以前有人遇到过这个问题吗?在


Tags: 数据store代码importpandasdfasnp