Pandas — объект «Серия» не имеет атрибутаPython

Программы на Python
Anonymous
Pandas — объект «Серия» не имеет атрибута

Сообщение Anonymous »

Мне нужно использовать лямбда-функцию для выполнения построчных вычислений. Например, создайте фрейм данных

Код: Выделить всё

import pandas as pd
import numpy as np

def myfunc(x, y):
return x + y

colNames = ['A', 'B']
data = np.array([np.arange(10)]*2).T

df = pd.DataFrame(data, index=range(0, 10), columns=colNames)
с помощью myfunc это работает

Код: Выделить всё

df['D'] = (df.apply(lambda x: myfunc(x.A, x.B), axis=1))
но этот второй случай не работает!

Код: Выделить всё

df['D'] = (df.apply(lambda x: myfunc(x.colNames[0], x.colNames[1]), axis=1))
выдает ошибку

Код: Выделить всё

AttributeError: ("'Series' object has no attribute 'colNames'", u'occurred at index 0')
Мне действительно нужно использовать второй случай (доступ к именам столбцов с помощью списка), который выдает ошибку, есть какие-нибудь подсказки, как это сделать?

Подробнее здесь: https://stackoverflow.com/questions/405 ... -attribute

Вернуться в «Python»