Python df.values和np.apply_沿_轴出现故障

Python df.values和np.apply_沿_轴出现故障,python,numpy,pandas,row,iteration,Python,Numpy,Pandas,Row,Iteration,我需要迭代数据帧的行。由于为每一行创建一个Series对象,所以“native pandas”迭代相当慢,因此我决定迭代底层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,

我需要迭代数据帧的行。由于为每一行创建一个Series对象,所以“native pandas”迭代相当慢,因此我决定迭代底层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)
问题是有些不可预测,我偶尔会出现如下错误:

Traceback (most recent call last):
  File "C:\Documents and Settings\Example User\My Documents\Example Directory\modul
e1.py", line 15, in <module>
    module2.main()
  File "C:\Documents and Settings\Example User\My Documents\Example Directory\dir1\module2.py", line 183, in main
    result = np.apply_along_axis(mapped_function, axis=1, arr=df[['colA', 'colC', 'colG']].values)
  File "C:\Anaconda\lib\site-packages\numpy\lib\shape_base.py", line 129, in app
ly_along_axis
    outarr[tuple(i.tolist())] = res
ValueError: cannot copy sequence with size 7 to array axis with dimension 11
因此,
mapped_函数
似乎没有故障,但是
apply_沿着_轴
似乎遇到了故障。不幸的是,我没有幸运地诊断出原因


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

那么,你的函数给出的值比它得到的要少?df[['colA','colC','colG']]是什么样的值?形状,数据类型?预期的
结果的形状是什么?所有
mapped_函数(行)
是否返回相同的形状?对于2d
arr
apply_沿_轴
outarr[k,:]=mapped_函数(arr[k,:])
的范围是
k
outarr
的形状由
mapped_函数(arr[0,:])
决定。
result = []
for row in df = df[10:20]:
    result += [mapped_function(row)]